黑马程序员技术交流社区

标题: 求解 [打印本页]

作者: 尉迟真金    时间: 2016-9-17 00:08
标题: 求解
下面的代码用于输出字符数组ch中每个字符出现的次数
        public static void main(String[] args) {
                char[] ch = { 'a', 'c', 'a', 'b', 'c', 'b' };
                HashMap map = new HashMap();
                for (int i = 0; i < ch.length; i++) {
                        //位置①
                }
                System.out.println(map);
}
应该填入位置①的代码是,不允许使用工具运行程序( B  )

A.
if (map.contains(ch[i])) {
                        map.put(ch[i], map.get(ch[i]) + 1);
                } else {
                        map.put(ch[i], 1);
        }
B.
                if (map.contains(ch[i])) {  
                                map.put(ch[i], (Integer) map.get(ch[i]) + 1);
                } else {
                        map.put(ch[i], 1);
        }
C.
                if (map.containsKey(ch[i])) {
                        map.put(ch[i], (int) map.get(ch[i]) + 1);
                } else {
                        map.put(ch[i], 1);
        }
D.
                if (map.containsKey(ch[i])) {  
                        map.put(ch[i], (Integer) map.get(ch[i]) + 1);  
                } else {  
                        map.put(ch[i], 1);  
        }
作者: Jarc    时间: 2016-9-17 12:29
map.containsKey(ch[i])这个是必须有的,所以C或D,但在CD中区别只是int和Integer,在-128-127之间,int和Integer 没有区别,CD都可以,但统计数字,最好还是C吧
作者: 尉迟真金    时间: 2016-9-18 00:30
还是牛人比较多呀




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2