遍历map的五种方法介绍
导读
日常开发中Map集合遍历是经常使用的,下面介绍几种遍历方法的差异。
1、Iterator+entrySet写法【推荐JDK8以下】,Map.Entry是Map接口的内部接口,获取迭代器,然后依次取出每个迭代器里面的Map.Entry
        Iterator<Map.Entry<Integer,String>> iterator=map.entrySet().iterator();
        while(iterator.hasNext()){
            Map.Entry<Integer,String> entry=iterator1.next();
            System.out.println(entry.getKey());
            System.out.println(entry.getValue());
        }2、Iterator+keyset写法【不推荐,只能获取key,然后通过key获取对应的value,重复计算】
        Iterator<Integer> iterator=map.keySet().iterator();
        while (iterator.hasNext()){
            Integer key=iterator.next();
            System.out.println(key);
            System.out.println(map.get(key));
        }3、foreach遍历方式【JDK8以下推荐写法】
        for(Map.Entry<Integer,String> entry:map.entrySet()){
            System.out.println(entry.getKey());
            System.out.println(entry.getValue());
        };4、lambda表达式遍历【JDK8推荐写法,简捷】
        map.forEach((key,value)->{
            System.out.println(key);
            System.out.println(value);
        });5、stream流遍历Map【JDK8不推荐写法,重复计算】
        map.entrySet().stream().forEach((Map.Entry<Integer, String> entry) -> {
            System.out.println(entry.getKey());
            System.out.println(entry.getValue());
        });如果Map集合存在一些中间处理,可以过滤操作,使用流式遍历也很方便。
猜你喜欢
  评论(0)
  
 
