HashMap 的迭代方式有哪几种?

 作者简介:大家好,我是码炫码哥,前中兴通讯、美团架构师,现任某互联网公司CTO,兼职码炫课堂主讲源码系列专题


代表作:《jdk源码&多线程&高并发》,《深入tomcat源码解析》,《深入netty源码解析》,《深入dubbo源码解析》,《深入springboot源码解析》,《深入spring源码解析》,《深入redis源码解析》等


联系qq:184480602,加我进群,大家一起学习,一起进步,一起对抗互联网寒冬。码炫课堂的个人空间-码炫码哥个人主页-面试,源码等

释放21集全网最深ConcurrentHashMap的vip视频,复现每一行源码

HashMap 的迭代方式一般有如下几种:

  • 使用 for-each 循环遍历 keySet()
  • 使用 for-each 循环遍历 entrySet()
  • 使用 Iterator 遍历 keySet()
  • 使用 Iterator 遍历 entrySet()
  • 使用 Lambda 表达式
  • 使用 Streams API 单线程
  • 使用 Streams API 多线程

详情

基础数据

    private Map<Integer,String> hashMap = new HashMap<>(){
  
  {
        put(1,"死磕");
        put(2,"死磕 Java");
        put(3,"死磕 Spring");
        put(4,"死磕 Redis");
        put(5,"死磕 Java NIO");
        put(6,"死磕 Netty");
        put(7,"死磕 Java 新特性");
        put(8,"死磕 Java 基础");
    }};

使用 for-each 循环遍历 keySet()

    @Test
    public void test1() {
        for (Integer key : hashMap.keySet()) {
            System.out.println(key + "---" + hashMap.get(key));
        }
    }

执行结果:

1---死磕
2---死磕 Java
3---死磕 Spring
4---死磕 Redis
5---死磕 Java NIO
6---死磕 Netty
7---死磕 Java 新特性
8---死磕 Java 基础

使用 for-each 循环遍历 entr

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值