不同方式遍历Map集合(全)

 更新时间:2015年07月22日 09:19:46   作者:FOEVERYANG  
大家都知道Map是一种以键值对的形式存在的集合,其中每个键映射到一个值,下面把Map遍历集合总结了一下给大家分享下,需要的朋友可以参考下

今天一朋友问我有关Map集合的遍历问题,说真的当时真是懵了似懂非懂的,下面我通过查阅资料,具体内容整理如下:

 public static void main(String[] args){
 Map<String,String> map=new HashMap<String,String>();
 map.put("1","张三");
 map.put("2","李四");
 map.put("3","王五");
 } 

第一种方法:通过Map.keySet遍历key和value   

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

 第二种方法:通过Map.entrySet和迭代器遍历Map

Iterator<Map.Entry<String,String>> car =map.entrySet().interator();
 while(car.hasNext()){
 Map.Entry<String,String> entry=car.next();
 System.out.println("key="+entry.getKey()+"and value="+entry.getValue());
 
 }

 第三种方法:Map.entrySet()加for in 循环(推荐):

for(Map.Entry<String,String> entry:map.entrySet()){
 System.out.println("key="+entry.getKey()+"and value="+entry.getValue());

}

注:Map.entrySet()返回的是一个Set<Map<k,v>>,Map.Entry是一个接口,表示一个键值对(映射项),而Set<Map<k,v>>则表示映射项的Set。

 第四种方法:通过Map.values():

for(String val:map.Values()){
 System.out.println("value="+v);

}

以上四种方法介绍了Map集合的遍历代码,希望能够帮助到大家。

相关文章

  • springboot整合websocket后启动报错(javax.websocket.server.ServerContainer not available)

    springboot整合websocket后启动报错(javax.websocket.server.ServerCont

    这篇文章主要介绍了springboot整合websocket后启动报错(javax.websocket.server.ServerContainer not available),通过分析错误信息、排查代码和配置,找出问题的根源,并给出相应的解决方案,感兴趣的可以了解一下
    2024-01-01
  • Java内存各部分OOM出现原因及解决方法(必看)

    Java内存各部分OOM出现原因及解决方法(必看)

    下面小编就为大家带来一篇Java内存各部分OOM出现原因及解决方法(必看)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-04-04
  • IDEA安装Leetcode插件的教程

    IDEA安装Leetcode插件的教程

    这篇文章主要介绍了IDEA安装Leetcode插件的教程,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-11-11
  • java调用百度的接口获取起-止位置的距离

    java调用百度的接口获取起-止位置的距离

    本文主要介绍了java调用百度的接口获取起-止位置的距离,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-04-04
  • SpringBoot开发中使用DTO层的方法示例

    SpringBoot开发中使用DTO层的方法示例

    DTO层是在应用程序的业务逻辑层和数据访问层之间引入的一个中间层,用于在不同层之间传输数据,本文主要介绍了SpringBoot开发中使用DTO层,具有一定的参考价值,感兴趣的可以了解一下
    2024-06-06
  • Spring中的@Scheduled定时任务注解详解

    Spring中的@Scheduled定时任务注解详解

    这篇文章主要介绍了Spring中的@Scheduled定时任务注解详解,要使用@Scheduled注解,首先需要在启动类添加@EnableScheduling,启用Spring的计划任务执行功能,这样可以在容器中的任何Spring管理的bean上检测@Scheduled注解,执行计划任务,需要的朋友可以参考下
    2023-09-09
  • 一篇文章详解JAVA远程debug

    一篇文章详解JAVA远程debug

    这篇文章主要给大家介绍了关于JAVA远程debug的相关资料,日常我们debug是经常用的,但是本地还好说,远程debug就有点难度,需要的朋友可以参考下
    2023-08-08
  • SpringBootTest单元测试报错的解决方案

    SpringBootTest单元测试报错的解决方案

    这篇文章主要介绍了SpringBootTest单元测试报错的解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-09-09
  • java 终止线程的4种方式小结

    java 终止线程的4种方式小结

    本文主要介绍了java终止线程的4种方式小结,包含布尔标志位,interrupt()方法,stop()方法和Thread.interrupt()方法,具有一定的参考价值,感兴趣的可以了解一下
    2024-05-05
  • Java简单实现农夫过河问题示例

    Java简单实现农夫过河问题示例

    这篇文章主要介绍了Java简单实现农夫过河问题,简单描述了农夫过河问题的概念、原理并结合简单实例形式分析了java解决农夫过河问题的相关操作技巧,需要的朋友可以参考下
    2017-12-12

最新评论