您当前的位置:首页 > 计算机 > 编程开发 > Java

Map集合的四种遍历方式,看一眼就会

时间:05-13来源:作者:点击数:

遍历Map和遍历List还是有很大区别的,初学者没接触过map的话可能看不太懂代码,我这里简单说一下。

Map中存储元素是是以“键值对”的方式,也就是key-value对。

Map.Entry 是Map中的一个接口,它的用途是表示一个映射项(里面有Key和Value),如下图所示:

在这里插入图片描述

所以遍历的时候我们可以通过Map的entrySet()方法,它返回一个实现Map.Entry接口的对象集合,每个entry对象中都存储这一对K-V对。我们就可以通过这个对象调用getKey()和getValue()轻松拿到需要的key和value

下面代码中的第二三种遍历方式就用到了entrySet()方法

//Map集合的四种遍历方式
public class MapDemo {
    public static void main(String[] args) {
        Map<String, Integer> map = new HashMap<>();
        map.put("tom",11);
        map.put("cindy",22);
        map.put("marry",42);
        //1、第一种遍历方法,得到key-->再拿到value
        for(String key : map.keySet()){  //keySet()返回此映射中包含的键的Set视图
            System.out.print(key+"="+ map.get(key)+" ");
        }

        //2、第二种遍历方法,通过Map.entrySet使用iterator遍历key和value
        Set<Map.Entry<String, Integer>> entries = map.entrySet(); //entrySet()返回此映射中包含的entry的Set视图
        Iterator<Map.Entry<String, Integer>> iterator = entries.iterator();
        while (iterator.hasNext()){
            Map.Entry<String, Integer> next = iterator.next();
            System.out.print(next.getKey()+"="+next.getValue()+" ");
        }

        //3、第三种遍历方式,通过Map.entrySet遍历key和value
        for (Map.Entry<String,Integer> entry : map.entrySet()){
            System.out.print(entry.getKey()+"="+entry.getValue()+" ");
        }

        //4、第四种遍历方式,通过Map.values()遍历所有的value,但不能遍历key
        for (Integer integer: map.values()){
            System.out.print("value="+integer+" ");
        }
    }
}
方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
栏目更新
栏目热门