黑马程序员技术交流社区

标题: 讲解一下map遍历 [打印本页]

作者: CHENVICTORY    时间: 2015-10-7 11:56
标题: 讲解一下map遍历
一共有两种方法,理解不了map.entrySet(),返回键值对,也是map类型?
作者: Rzzz    时间: 2015-10-7 12:19
Map我们知道是双列集合的跟接口...自定义对象的时候我们把这个键和值封装成一个对象整体.就是调用Map的entrySet方法返回的是一个Set集合视图,类型就是这个Set集合后面跟的这个泛型,其实就是<Map.entry>类型的集合..
Map.Entry其实你看这个是接口 . 调用一个方法.说明Entry是Map内部接口.将键和值封装成Entry对象,存储在Set集合中...

Iterator<Map.Entry<String, Integer>> it = entrySet.iterator();
                while(it.hasNext()) {
                        //获取每一个Entry对象
                        Map.Entry<String, Integer> en = it.next();        //父类引用指向子类对象
                        //Entry<String, Integer> en = it.next();        //直接获取的是子类对象
                        String key = en.getKey();                                        //根据键值对对象获取键
                        Integer value = en.getValue();                                //根据键值对对象获取值
                        System.out.println(key + "=" + value);

后面遍历就是获取这个Map.entry集合的迭代器..   希望对你有帮助..
作者: 蓝天I    时间: 2015-10-7 19:51
map遍历一共两方式,一、使用KeySet来遍历;二、使用EntrySet来遍历。
map.entrySet()返回类型应该是Map.Entry类型
作者: 夏木南生    时间: 2015-10-7 20:04
为什么说的这么复杂




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