List几种遍历方法速度

准备数据

java 复制代码
 ArrayList<Integer> list = new ArrayList<Integer>();
 for (int i = 0; i < 100000000; i++) {
     list.add(i);
}

1.for循环

java 复制代码
 for (int i = 0; i < list.size(); i++) {
     Integer str = list.get(i);
}

2.for-each循环

java 复制代码
 for (Integer vo:list
        ) {

        }

3.Lambda

java 复制代码
 list.forEach(u->{});

迭代器

java 复制代码
Iterator<Integer> itr = list.iterator();
        while(itr.hasNext()){
            Integer str = itr.next();
        }

for循环耗时106毫秒,for-each循环耗时103毫秒,Lambda耗时122毫秒,迭代器耗时100毫秒

从结果看出,for循环、for-each循环、迭代器差不多,Lambda耗时最长

相关推荐
云烟成雨TD1 分钟前
Spring AI Alibaba 1.x 系列【63】AI Agent 长期记忆
java·人工智能·spring
憧憬成为java架构高手的小白11 分钟前
苍穹外卖--day09
java·spring boot·百度
学代码的真由酱17 分钟前
Java多用户一对一网页聊天室-测试报告
java·开发语言·功能测试·测试
Jasonakeke1 小时前
SpringBoot自动配置原理揭秘
java·spring boot·后端
2301_803538951 小时前
Java读取Word图片的两种实用方法
java·开发语言·word
C+-C资深大佬2 小时前
SSM 框架(Spring + SpringMVC + MyBatis)
java·spring·mybatis
帅次2 小时前
Android 17 开发者实战:核心更新与应用场景落地指南
android·java·ios·android studio·iphone·android jetpack·webview
Ramble_Naylor2 小时前
东方通(TongWeb)SpringBoot开发指导
java·spring boot
大鹏说大话2 小时前
SQL 排序与分组实战:解决“分组后取最新数据“
android·java·数据库
云烟成雨TD2 小时前
Spring AI Alibaba 1.x 系列【64】 ReactAgent 长期记忆
java·人工智能·spring