我同意这样的观点,在某些情况下,使用流进行编程非常好并且更容易,但是当我们在性能上失去优势时,为什么需要使用它们呢?
性能很少成为问题。通常需要将10%的流重写为循环才能获得所需的性能。
有什么我想念的吗?
使用parallelStream()更容易使用流,并且可能更高效,因为很难编写高效的并发代码。
流在哪些情况下执行等于循环的情况?仅在定义的函数花费大量时间而导致循环性能可忽略不计的情况下吗?
您的基准测试存在缺陷,因为该代码在启动时尚未编译。我将像JMH一样循环执行整个测试,或者使用JMH。
在任何情况下,我都看不到流利用分支预测
分支预测是CPU功能,而不是JVM或流功能。



