Map集合的四种遍历

Map集合的四种遍历

这里记录一下map集合的4种遍历:

第一种

得到所有的key–map.keySet() ,根据key拿到value–map.get(key)

public static void main(String[] args) {

        Map<String, String> map = new HashMap();
        map.put("1", "刘备");
        map.put("2", "关羽");
        map.put("3", "张飞");
        map.put("4", "诸葛亮");

        // 第一种:得到所有的key--map.keySet() ,根据key拿到value--map.get(key)
        System.out.println("第一种:得到所有的key--map.keySet() ,根据key拿到value--map.get(key)");
        Set<String> set = map.keySet();
        for (String key : set) {
            String value = map.get(key);
            System.out.println("key为:" + key + ";value为:" + value);
        }
    }

控制台打印结果:
Map集合的四种遍历_第1张图片

第二种

得到Iterator对象–map.entrySet().iterator() ,根据while循环拿到Map.Entry对象,再分别拿到key和value

public static void main(String[] args) {

        Map<String, String> map = new HashMap();
        map.put("1", "吴用");
        map.put("2", "关胜");
        map.put("3", "林冲");
        map.put("4", "武松");

        // 第二种:得到Iterator对象--map.entrySet().iterator() ,根据while循环拿到Map.Entry对象,再分别拿到key和value
        System.out.println("第二种:得到Iterator对象--map.entrySet().iterator() ,根据while循环拿到Map.Entry对象,再分别拿到key和value");
        Iterator<Map.Entry<String, String>> iterator = map.entrySet().iterator();
        while (iterator.hasNext()){
            Map.Entry<String, String> entry = iterator.next();
            System.out.println("key为:" + entry.getKey() + ";value为:" + entry.getValue());
        }
    }

控制台打印结果:
Map集合的四种遍历_第2张图片

第三种

得到 Set> 对象–map.entrySet(),遍历entries拿到Map.Entry对象,再分别拿到key和value
数据量大的时候推荐使用此方法

public static void main(String[] args) {

        Map<String, String> map = new HashMap();
        map.put("1", "花果山");
        map.put("2", "水帘洞");
        map.put("3", "五指山");
        map.put("4", "两界山");

        // 第三种:得到 Set> 对象--map.entrySet(),遍历entries拿到Map.Entry对象,再分别拿到key和value
        System.out.println("第三种:得到 Set> 对象--map.entrySet(),遍历entries拿到Map.Entry对象,再分别拿到key和value");
        Set<Map.Entry<String, String>> entries = map.entrySet();
        for (Map.Entry<String, String> entry : entries) {
            System.out.println("key为:" + entry.getKey() + ";value为:" + entry.getValue());
        }
    }

控制台打印结果:
Map集合的四种遍历_第3张图片

第四种

只遍历value–map.values() 根据特殊业务需求可以使用此方法

public static void main(String[] args) {

        Map<String, String> map = new HashMap();
        map.put("1", "大观园");
        map.put("2", "宁国府");
        map.put("3", "潇湘馆");
        map.put("4", "栊翠庵");

        // 第四种:只遍历value--map.values() 根据特殊业务需求可以使用此方法
        System.out.println("第四种:只遍历value--map.values()");
        Collection<String> values = map.values();
        for (String value: values) {
            System.out.println("value为:" + value);
        }
    }

控制台打印结果:
Map集合的四种遍历_第4张图片

测试OK!

欢迎大神指导,可以留言交流!

======================
本人原创文章,转载注明出入!

=================

你可能感兴趣的:(技术,java,hashmap,iterator)