/**
* 找出字符串中相同的字符并统计
* @param args
*/
public static void main(String[] args) {
String s ="aaabbbcccddttt";
Map map = new HashMap();
for (int i = 0; i < s.length(); i++) {
if(map.get(s.charAt(i)) != null){
map.put(s.charAt(i), map.get(s.charAt(i))+1);
}else {
map.put(s.charAt(i),1);
}
}
System.out.println(map);
}
结果:{a=3, b=3, c=3, d=2, t=3}
思路: 先循环整个字符串 用到了map的键值对,判断map的key 是否存在 map不存在就赋值字符当map的key ,value 为1 map.put(s.charAt(i),1); 当map存在时,就在当前value值之上+1操作 map.put(s.charAt(i), map.get(s.charAt(i))+1);
注意:map中泛型 Character 为char的包装类,也可以使用Object代替