package com.baidu.oct4;
import java.util.Iterator;
import java.util.Map;
import java.util.Map.Entry;
import java.util.TreeMap;
public class TreeSetDemo
{
public static void main(String [] args)
{
String str = "abcdefyadhisn,xiednefmecd casdxsdffg@$%tjukdfds,生活是一杯酒,生活是一首诗";
String count =getCount(str);
System.out.println(count);
}
// 获取统计的方法
public static String getCount(String str)
{
char [] ch = str.toCharArray();
Map map = new TreeMap();
for (int i = 0; i < ch.length; i++)
{
// 只统计里面英语字母的个数
// if(!(ch[i]>'a'&&ch[i]<'z'||ch[i]>'A'&&ch[i]<'Z'))
// continue;
// 只统计其中汉字个数
//
// if(!(ch[i]>='一'&&ch[i]<='龥'))
// \u4e00 \u9fa5
// continue;
// 获取字符数组顺序对应的值
Integer value = map.get(ch[i]);
int count=1;
if(value!=null)
{
count = value+1;
}
map.put(ch[i], count);
}
return toNewString(map);
}
//将 麻婆 Map 结果转换成自定义格式的字符串
public static String toNewString(Map map)
{
StringBuilder sb = new StringBuilder();
Iterator > it = map.entrySet().iterator();
while(it.hasNext())
{
Entry en = it.next();
char cha= en.getKey();
int value = en.getValue();
sb.append(cha+"{"+value+"}"+" ");
}
return sb.toString();
}
}
运行效果:
统计全部字符串出现次数
只统计其中每个汉字出现的次数
只统计其中每个英文字母出现的次数