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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 荒丶 中级黑马   /  2016-4-9 12:27  /  446 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

public class Test1 {

        /**
         * * A:案例演示
        * 需求:统计字符串中每个字符出现的次数
        * 分析:
        * 1定义一个需要被统计的字符串
        * 2.将字符串转换为字符数组
        * 3.定义一个双列集合.存储字符串字符以及字符出现的次数.TreehashMap集合
        * 4.遍历字符数组获取每一个字符,并将字符存储在双列集合中
        * 5.存储过程过做判断.如果集合中不包含这个键,就将该字符当做键,值为1存储,如果集合包含这个键,就将值+1存储
        * 6.遍历集合,获取字符出现的次数
         */
        public static void main(String[] args) {
                String str = "aaaabbbbccccddddeeecccff";
                char[] arr = str.toCharArray();
                HashMap<Character, Integer> hm = new HashMap<>();
                for (char c : arr) {
                        /*if (!hm.containsKey(c)) {
                                hm.put(c, 1);
                        }else {
                                hm.put(c, hm.get(c) + 1);//获取键的值  +1
                        }*/
                        hm.put(c, !hm.containsKey(c)? 1 : hm.get(c) + 1);
                }
               
                for (char key : hm.keySet()) {
                        System.out.println(key + "..." + hm.get(key));
                }
        }

}

2 个回复

倒序浏览
caoshengwei 来自手机 中级黑马 2016-4-9 12:30:25
沙发
荒丶 发表于 2016-4-9 12:27
public class Test1 {

        /**

666666666666666
回复 使用道具 举报
性感不是骚 来自手机 中级黑马 2016-4-9 12:32:33
藤椅
不错,挺有用的
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马