java stream 遍历map_遍历map的五种方法介绍

java stream 遍历map_遍历map的五种方法介绍_第1张图片

日常开发中Map集合遍历是经常使用的,下面介绍几种遍历方法的差异。

(推荐教程:java课程)

1、Iterator+entrySet写法【推荐JDK8以下】,Map.Entry是Map接口的内部接口,获取迭代器,然后依次取出每个迭代器里面的Map.EntryIterator> iterator=map.entrySet().iterator();

while(iterator.hasNext()){

Map.Entry entry=iterator1.next();

System.out.println(entry.getKey());

System.out.println(entry.getValue());

}

2、Iterator+keyset写法【不推荐,只能获取key,然后通过key获取对应的value,重复计算】Iterator 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 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 entry) -> {

System.out.println(entry.getKey());

System.out.println(entry.getValue());

});

如果Map集合存在一些中间处理,可以过滤操作,使用流式遍历也很方便。

你可能感兴趣的:(java,stream,遍历map)