黑马程序员技术交流社区

标题: 把map集合转成set的方法,是遍历吗? [打印本页]

作者: 沿途的记忆    时间: 2014-6-27 15:07
标题: 把map集合转成set的方法,是遍历吗?
把map集合转成set的方法,是遍历吗?
作者: Coup_D`etat    时间: 2014-6-27 15:14
用entrySet() 或者keySet() 可以返回一个set集合,从而遍历map集合。
作者: 菜小徐    时间: 2014-6-27 15:48
因为Map集合没有自己的迭代器,要借用Set的迭代器进行遍历,所以要把Map集合转成Set集合。
转换的方式有两种 ,一种是keySet(),一种是entrySet()

作者: 天,殇心    时间: 2014-6-27 17:50
本帖最后由 天,殇心 于 2014-6-27 17:51 编辑



Set keySet();
        Set entrySet();//取的是键和值的映射关系。
Entry就是Map接口中的内部接口;
为什么要定义在map内部呢?entry是访问键值关系的入口,是map的入口,访问的是map中的键值对。
---------------------------------------------------------
取出map集合中所有元素的方式一:keySet()方法。
可以将map集合中的键都取出存放到set集合中。对set集合进行迭代。迭代完成,再通过get方法对获取到的键进行值的获取。
                Set keySet = map.keySet();
                Iterator it = keySet.iterator();
                while(it.hasNext()) {
                        Object key = it.next();
                        Object value = map.get(key);
                        System.out.println(key+":"+value);
                }
--------------------------------------------------------
取出map集合中所有元素的方式二:entrySet()方法。
Set entrySet = map.entrySet();
                Iterator it = entrySet.iterator();
                while(it.hasNext()) {
                        Map.Entry  me = (Map.Entry)it.next();
                        System.out.println(me.getKey()+"::::"+me.getValue());
                }






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