想起String中没有这种统计的方法,之前有看到过这个问题,有点兴趣,写一下思路:
定义一个String
然后把String 转成char数组
定义一个hashmap
然后遍历出char数组的数据,然后在hashmap里找对应的key,如果没有,put进map,如果有,在原来值上+1
最后再遍历输出就可以了。思路很简单
// 定义一个String String str="aaabbccccdddddddj"; // 定义一个map HashMap<Character, Integer> map=new HashMap(); // 字符串转换成数组 char[] chars=str.toCharArray(); // 定义一个数字 int num=1; // for循环判断 for(char a:chars){ // 如果map里没有,那么就put进去 if(!map.containsKey(a)){ map.put(a,1); }else{ map.put(a,map.get(a)+1); } } for(char c:map.keySet()){ System.out.println("key:"+c+"====value:"+map.get(c)); }