JAVA遍历Map方法大全

欣喜 Java经验 发布时间:2023-12-22 09:40:55 阅读数:13089 1
下文可以毫不夸张的说:“是市面上遍历Map的最全方法”,如下所示

遍历Map方法大全

一、for循环 + Entryset
二、Iterator + Entryset
三、for循环 + KeySet(效率低)
四、Iterator + Keyset(效率低)
五、Lambda表达式(JDK8推荐此方式)
六、Stream流

基础数据源准备

Map<String,String> map = new HashMap<String,String>();
map.put("1","java265.com");
map.put("2","java我最爱的网站");
map.put("3","java世界上最好的语言")

1.for循环 + Entryset

  使用map.entrySet()方法
      可获取到一个Set集合
      这个集合中的每一个元素就是Map中的一个键值对
      然后通过循环遍历这个Set集合
      可依次获取每对的键和值
      该方法使用foreach循环
      且获取Map键和值
        
for(Map.Entry<Integer,String> entry : map.entrySet()){
    System.out.println(entry.getKey());
    System.out.println(entry.getValue());
} 

2.Iterator + Entryset

Entry是Map接口内部接口
   获取迭代器
   然后循环依次取出每个迭代器里面的Entry
   再使用Entry取出每个键值对 

Iterator<Map.Entry<String,String>> iterator=map.entrySet().iterator();
	while(iterator.hasNext()){
	Map.Entry<String,String> entry=iterator1.next();
	System.out.println(entry.getKey());
	System.out.println(entry.getValue());
}

3.for循环 + KeySet(效率低)

使用map.keySet()方法
  可获取Map所有key的集合(set)
   然后使用遍历这个Set就可以遍历到Map的key
    如果想要同时遍历到Map的value
    则需要进一步通过key来从Map这个集合中获取对应的value 

for (String key : map.keySet()) {
    System.out.println("key:" + key + ",");
    System.out.println("value:" + map.get(key));
}

4.Iterator + Keyset(效率低)

Iterator<String> iterator=map.keySet().iterator();
while (iterator.hasNext()){
    String key = iterator.next();
    System.out.println(key);
    System.out.println(map.get(key));
}

5.lambda表达式

map.forEach((key,value)->{
    System.out.println(key);
    System.out.println(value);
});

6.Stream流

map.entrySet().stream().forEach((Map.Entry<Integer, String> entry) -> {
    System.out.println(entry.getKey());
    System.out.println(entry.getValue());
}); 
版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。

本文链接: https://www.Java265.com/JavaJingYan/202312/17032092997529.html

最近发表

热门文章

好文推荐

Java265.com

https://www.java265.com

站长统计|粤ICP备14097017号-3

Powered By Java265.com信息维护小组

使用手机扫描二维码

关注我们看更多资讯

java爱好者