A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

//注释部分为另一种方法
import java.util.HashMap;

public class test2 {

        /**
         * @param args
         */
        public static void main(String[] args) {
                String str = "aaaabbbcccccccccc";
                char[] arr = str.toCharArray();
                HashMap<Character, Integer> hm = new HashMap<>();
        for(char c : arr) {                                 //遍历字符数组
                /*if(!hm.containsKey(c)) {                      //如果不包含这个键
                        hm.put(c, 1);                               //就将键和值为1添加
                }else {                                         //如果包含这个键
                        hm.put(c, hm.get(c) + 1);                   //就将键和值再加1添加进来
                    }*/
                hm.put(c, !hm.containsKey(c) ? 1 : hm.get(c) + 1);
                //Integer i = !hm.containsKey(c) ? hm.put(c, 1) : hm.put(c, hm.get(c) + 1);
    }

        for (Character key : hm.keySet()) {                 //遍历双列集合
                System.out.println(key + "=" + hm.get(key));
        }
        }

}

2 个回复

倒序浏览
可以的兄弟。
回复 使用道具 举报
恩。不错 判断用了3元运算符 可以的 小伙比我还666
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马