Java 遍历Map的5种方式

复制代码
package cn.jdbc.test;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Map.Entry;
 
/**
 * Map 集合的循环遍历
 * @data 2020.11.12
 *
 */
public class TestMap {
 
         public static void main(String[] args) {
              Map<String, Object> map = new HashMap<String, Object>();
              map.put("aaa", 111);
              map.put("bbb", 222);
              map.put("ccc", 333);

// 第一种: 通过keySet的方式 System.out.println("第1种:通过Map.keySet()遍历key和value:"); for(String key:map.keySet()){//keySet获取map集合key的集合 然后在遍历key获取value即可 String value = map.get(key).toString();// System.out.println("key:"+key+" vlaue:"+value); } // 第二种通过迭代器的方式 System.out.println("第2种:通过Map.entrySet使用iterator遍历key和value:"); Iterator<Entry<String, Object>> it = map.entrySet().iterator(); while(it.hasNext()){ Entry<String, Object> entry = it.next(); System.out.println("key:"+entry.getKey()+" key:"+entry.getValue()); } // 第三种:尤其是容量大时,推荐 System.out.println("第3种:通过Map.entrySet遍历key和value"); for (Map.Entry<String, Object> m : map.entrySet()) { System.out.println("key:" + m.getKey() + " value:" + m.getValue()); } // 第四种:只需要获取value时使用 System.out.println("第4种:通过Map.values()遍历所有的value,但不能遍历key"); for(Object m:map.values()){ System.out.println(m); }

            // 第五种通过forEach进行遍历
            System.out.println("第5种:通过JDK8的新特性,lambad表达式");
            map.forEach((k,v){
                System.out.println("key:"+k+", value:"+v);
            });
     }
}
复制代码

  如果只是获取key,或者value,推荐使用keySet或者values方式;

  如果同时需要key和value推荐使用entrySet;

   如果需要在遍历过程中删除元素推荐使用Iterator;

   如果需要在遍历过程中增加元素,可以新建一个临时map存放新增的元素,等遍历完毕,再把临时map放到原来的map中。

Java遍历List集合的几种方式:https://www.cnblogs.com/zhaosq/p/14103059.html

posted @   zsq_fengchen  阅读(675)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现
历史上的今天:
2018-12-25 MySQL视图 索引 存储过程 触发器 函数
点击右上角即可分享
微信分享提示