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耗时最长

相关推荐
lee_curry7 小时前
第四章 jvm中的垃圾回收器
java·jvm·垃圾收集器
九转成圣8 小时前
Java 性能优化实战:如何将海量扁平数据高效转化为类目字典树?
java·开发语言·json
直奔標竿8 小时前
Java开发者AI转型第二十七课!Spring AI 个人知识库实战(六)——全栈闭环收官,解锁前端流式渲染终极技巧
java·开发语言·前端·人工智能·后端·spring
金銀銅鐵9 小时前
[java] 编译之后的记录类(Record Classes)长什么样子(上)
java·jvm·后端
野生技术架构师11 小时前
金三银四面试总结篇,汇总 Java 面试突击班后的面试小册
java·面试·职场和发展
小袁拒绝摆烂11 小时前
多表关联大平层转JSON树形结构
java·json
ja哇12 小时前
大厂面试高频八股
java·面试·职场和发展
yoyo_zzm12 小时前
Laravel6.x新特性全解析
java·spring boot·后端
Nick_zcy12 小时前
小说在线阅读网站和小说管理系统 · 功能全解析
java·后端·python·springboot·ruoyi