当前位置: 首页 > article >正文

java中Map遍历的4种方式

目录

1、map.entrySet()方式

2、map.keySet()方式

3、map.values()方式

4、forEach方式


本文以如下map案例:

Map<String, String> map = new HashMap<>();
map.put("student1", "张三");
map.put("student2", "李四");
map.put("student3", "王五");

1、map.entrySet()方式

  • entrySet()方法: 获取map中所有的键值对,结果为Set集合
  • 在jdk版本小于1.8时,该种方式经常使用,效率高
//获取map中的所有键值对,结果为Set类型的集合
Set<Map.Entry<String, String>> entries = map.entrySet();
/** 遍历Set集合、开发中常见的遍历方式 */
//1、增强for形式遍历结果
for (Map.Entry<String, String> entry : entries) {
     System.out.println(entry);
}
//2、Lamdba表达式遍历结果
entries.forEach(entry-> System.out.println(entry));

2、map.keySet()方式

  • keySet()方法:获取map中的所有键(key),结果为Set集合
  • 该种方式比 entrySet()方式较慢,且比方式4慢,实际开发中也可使用
//获取map中的所有键,结果为Set类型的集合
Set<String> keys = map.keySet();
//根据key获取map中的元素
for (String key : keys) {
    System.out.println(map.get(key));
}

3、map.values()方式

  • values():直接获取map所有的值(value),组装为一个Collection集合
  • 该种方式效率最低,使用到最上层的Collection接口,开发中应当避免使用
//直接获取map所有的值(value),组装为一个Collection集合【Collection集合是Set、List的父接口】
Collection<String> values = map.values();
//遍历Collection集合
for (String value : values) {
    System.out.println(value);
}

4、forEach方式

  • 需JDK8及以上,直接支持遍历map
  • 该种方式是方式1(entrySet)的进一步封装,优化了代码的简洁性,性能与entrySet略慢(因为进一步封装了下),开发中经常使用

语法:

//当业务代码只有一句时,"{}"符号与";"符号可以省略

map.forEach((键变量名称,值遍历名称)->{

        //业务代码

});

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


http://www.kler.cn/a/3472.html

相关文章:

  • Hadoop MapReduce知识预览,WordCount词频统计案例
  • 用JS+CSS打造你自己的弹幕王国,让网页动起来!
  • 蓝桥杯刷题冲刺 | 倒计时14天
  • 【蓝桥杯集训·周赛】AcWing 第96场周赛
  • 微软Bing加入ChatGPT后如何用?教你12种问法黄金公式学会了,又能研究新副业赚钱又能加快学习速度
  • 【数据结构】链表OJ题
  • 中国石油大学(北京)第三届“骏码杯”程序设计竞赛(同步赛)
  • Day927.如何进行组件化分析和设计? -系统重构实战
  • Kafka介绍
  • 提升网站性能:Nginx五种高效负载均衡策略
  • Maven依赖管理
  • css绘制一个Pinia小菠萝
  • Matter名词解释
  • 初识HTTP协议
  • 大数据的常用算法(分类、回归分析、聚类、关联规则、神经网络方法、web数据挖掘)
  • 数组(完全二叉树)向下建堆法与堆排序O(N*logN)
  • redis 集群
  • [数据结构] 用两个栈实现队列详解
  • Prometheus cadvisor容器监控和node-exporter节点监控
  • STM-32:按键控制LED灯 程序详解