HashMap遍历几种方式比较(传统的Map迭代方式对比JDK8的迭代方式)

本文探讨HashMap的四种遍历方式:迭代器、For Each、Lambda表达式及Streams API,详细解析了每种方式下的不同实现,推荐使用Map.Entry对象的遍历方式。
摘要由CSDN通过智能技术生成

HashMap 遍历

在这里插入图片描述

HashMap 遍历从大的方向来说,可分为以下 4 类:

迭代器(Iterator)方式遍历;
For Each 方式遍历;
Lambda 表达式遍历(JDK 1.8+);
Streams API 遍历(JDK 1.8+)。
但每种类型下又有不同的实现方式,因此具体的遍历方式又可以分为以下 7 种:

使用迭代器(Iterator)EntrySet 的方式进行遍历;
使用迭代器(Iterator)KeySet 的方式进行遍历;
使用 For Each EntrySet 的方式进行遍历;
使用 For Each KeySet 的方式进行遍历;
使用 Lambda 表达式的方式进行遍历;
使用 Streams API 单线程的方式进行遍历;
使用 Streams API 多线程的方式进行遍历。

		//ForEach EntrySet
        for (Map.Entry<String,String> me :resultMap.entrySet()){
   
            System.out.println("EntrySet "+me.getKey() +" = "+ me.getValue());
        }
        //ForEach keySet
        for (String key : resultMap.keySet()){
   
            System.out.println("keySet "+key +" = "+ resultMap.get(key));
        }
        //Lambda forEach
        resultMap.forEach((key,value) -> {
            System.out.println("Lambda forEach " + key +" = "+value);
       });
        //Streams API 单线程
        resultMap.entrySet().stream().forEach((entry)->{
            System.out.println("Streams API 单线程 " + entry.getKey() +" = "+entry.getValue());
        });
        //Streams API 多线程
        resultMap.entrySet().parallelStream().forEach
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值