首页 > 其他 > 详细

Map 集合循环的几种方式

时间:2021-07-23 23:52:53      阅读:17      评论:0      收藏:0      [点我收藏+]

一、Map数据

public static void main(String[] args) {
    HashMap<String, Object> map = new HashMap<>();
    map.put("name", "张三");
    map.put("age", 20);
    map.put("sex", "男");
    map.put("phone", "13800000000");
    map.put("account", "123456789");
}

二、第一种:使用 map.entrySet() 进行循环

2.1、代码

// 方法一:在日常开发中使用比较多的,一般在键值对都需要使用
for (Map.Entry<String, Object> entry : map.entrySet()) {
    String key = entry.getKey();
    Object value = entry.getValue();
    String s = "key====>" + key+ ", value===>" + value;
    System.out.println(s);
}

2.2、运行结果

技术分享图片

三、第二种:通过迭代器方式循环

3.1、代码

// 方法二:在开发中很少人使用这个的,毕竟可读性相对比较差
Iterator<Map.Entry<String, Object>> iterator = map.entrySet().iterator();
    while (iterator.hasNext()) {
    Map.Entry<String, Object> entry = iterator.next();
    String s = "key====>" + entry.getKey() + ",value===>" + entry.getValue();
    System.out.println(s);
}

3.2、运行结果

技术分享图片

四、第三种:在for循环中遍历key或者values

一般适用于只需要map中的key或者value时使用,在性能上比使用entrySet较好。

4.1、代码

// 在for循环中遍历key
for(String key : map.keySet()){
	System.out.println(key);
}

System.out.println("----------");

// 在for循环中遍历value
for(Object value : map.values()){
	System.out.println(value);
}

4.2、结果

技术分享图片

五、第四种:通过键找值遍历

这种方式的效率比较低,因为本身从键取值是耗时的操作;

5.1、代码

// 第四种:通过键找值遍历
for (String key : map.keySet()) {
    Object value = map.get(key);
    System.out.println(key + ":" + value);
}

5.2、结果

技术分享图片

六、第五种:使用Java8特性

6.1、代码

// 第五种:使用Java8特性
map.forEach((key, value) -> System.out.println("key====>" + key + ",value===>" + value));

6.2、结果

技术分享图片

Map 集合循环的几种方式

原文:https://www.cnblogs.com/d-sixteen/p/15050102.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!