- 1
- 0
- 约3.66千字
- 约 7页
- 2018-12-19 发布于湖北
- 举报
Java8 Lambda表达式和流操作如何让你的代码变慢5倍
有许许多多关于 Java 8 中流效率的讨论,但根据 Alex Zhitnitsky 的测试结果显示:坚持使用传统的 Java?编程风格——iterator 和 for-each 循环——比 Java 8 的实现性能更佳。
Java 8 中的 Lambda 表达式和流(Stream)受到了热烈欢迎。这是 Java 迄今为止最令人激动的特征。这些新的语言特征允许采用函数式风格来进行编码,我们可以用这些特性完成许多有趣的功能。这些特性如此有趣以至于被认为是不合理的。我们对此表示怀疑,于是决定对这些特性进行测试。
我们创建一个简单的任务:从一个 ArrayList 找出最大值,将传统方式与 Java 8 中的新方式进行测试比较。说实话,测试的结果让我感到非常惊讶。
命令式风格与 Java 8 函数式编程风格比较
我喜欢直接进入主题,所以先看一下结果。为了做这次基准测试,我们先创建了一个 ArrayList,并插入一个 100000 个随机整数,并通过 7 种不同的方式遍历所有的值来查找最大值。实现分为两组:Java 8 中引入的函数式风格与 Java 一直使用的命令式风格。
这是每个方法耗费的时长:
最大错误记录是并行流上的 0.042,完整输出结果在这篇文章结尾部分可以看到。
小贴士:
哇哦!Java 8 中提供的任何一种新方式都会产生约 5 倍的性能差异。有时使用简单迭代器循环比混合
您可能关注的文档
最近下载
- 歌德学院德语A1考试心得和技巧.pdf VIP
- (高清版)DB4401∕T 17-2019 《园林树木安全性评价技术规范》.pdf VIP
- 电影网站建设方案ppt模板下载.pptx
- 2022 省级研究生教学成果奖申报书-产教融合背景下行业特色高校.pdf VIP
- 2025年上海市高考历史真题卷(含答案与解析).pdf VIP
- 直接引语和间接引语(21张精品课件).ppt VIP
- 船舶火警系统T2000中文操作手册.pdf
- 最新直接引语和间接引语(21张PPT).ppt VIP
- 2026年3月-7月查摆问题:政绩观重点纠治十种偏差问题对照查摆清单(150条).docx VIP
- 急性胆囊炎课件课件(完整版).pdf VIP
原创力文档

文档评论(0)