![]() |
1
17
老实说,我不相信自己
太多
要么在
结果表明:
|
![]() |
2
13
可以肯定地说,两种排序形式将具有相同的复杂性。。。即使不看代码。(如果他们不这样做,那么一个表单将被严重破坏!)
查看流的Java 8源代码(特别是内部类
如果
然后我们返回两个版本的代码:
在此版本中
在这个版本中,如上所述,与
总体而言(至少在Java 8实现的情况下)代码检查告诉我,第一个版本的代码不能比第二个版本慢,并且在大多数(如果不是所有)情况下,它会更快。但随着名单越来越大
如果您真的在意,那么应该编写一个基准测试,以测试与特定Java实现和特定输入数据集的实际差异。(或者改编@Eugene的基准!) |
![]() |
3
1
以下是我的基准(不确定是否正确):
结果:
在@Eugene的基准测试中,排序列表比排序流快一点(约20%)。让我有点惊讶的是
|
![]() |
John Smith · Java按值对映射进行分组,其中值为列表 2 年前 |
![]() |
AliCa · 如何将csv文件映射到列表 2 年前 |
![]() |
AAryz · 为什么Java 8流只能从API级别24获得? 7 年前 |
![]() |
Alex Bloomberg · 使用Java流生成json对象 7 年前 |
![]() |
Juan M · Java 8映射未按值正确排序[重复] 7 年前 |
![]() |
Eric Lilja · 从嵌套流中收集一组对象 7 年前 |