首先把字符串用toCharArray方法将该字符串转换成Char类型的数组,在循环这个数组往Map里面存,把元素作为key把该元素的个数作为value,只有碰见Map里面存在的元素对应的value就加1,循环结束要的结果也就出来啦!!
程序如下:
import java.util.*;
public class Test {
public static void main(String[] args){
String str="yekmaakkccekymbrb";
char[] cstr=str.toCharArray();
Map<Character,Integer> map=new HashMap<Character,Integer>();
map.put(cstr[0], 1);
for(int i=1;i<cstr.length;i++){
if(map.containsKey(cstr[i])){
int cishu=(Integer)map.get(cstr[i])+1;
map.put(cstr[i], cishu);
}else{
map.put(cstr[i], 1);
}
}
Set<Character> set=new HashSet<Character>();
set=map.keySet();
for(char c:set){
System.out.println((char)c+"--"+map.get©);
}
}
}