java

关注公众号 jb51net

关闭
首页 > 软件编程 > java > Java中for、foreach、stream区别

Java中for、foreach、stream区别和性能比较详解

作者:思静语

for、foreach、stream都可以循环处理数据,如果单纯当循环使用,for、foreach、stream哪个性能更好,这篇文章主要给大家介绍了关于Java中for、foreach、stream区别和性能的相关资料,需要的朋友可以参考下

性能比较

最终总结:如果数据在1万以内的话,for循环效率高于foreach和stream;如果数据量在10万的时候,stream效率最高,其次是foreach,最后是for。另外需要注意的是如果数据达到100万的话,parallelStream异步并行处理效率最高,高于foreach和for。

在效率方面,stream().forEach、forEach 和 parallelStream 之间存在一些差异。

区别

在Java中,forEach 方法是用来对集合中的每个元素执行特定操作的方法。stream().forEach 和 forEach 方法都可以使用在集合类上,但是有一些区别。

使用方式和行为

stream().forEach() 和 forEach() 在使用方式和行为上有一些区别。

fori
for (int i = 0; i < objects.size(); i++) {}
foreach
for (Object o : objects) {}
fori最普通的循环,可以时候得到当前的索引位置。
 
foreach 和fori区别不大,foreach是普通fori的增强版用起来更方便。但是没有当前索引。
1.list的遍历  
方法一:itli  或者fori
for (int i = 0; i < list3.size(); i++) {
  Integer integer =  list3.get(i);
}
方法二:iter
for (Integer integer : list3) {
  
}
方法三:forEach
list.forEach(o->{});

方法四:stream().forEach
list.stream()
    .forEach(
        o -> {
        });

总结 

到此这篇关于Java中for、foreach、stream区别和性能比较的文章就介绍到这了,更多相关Java中for、foreach、stream区别内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文