fori,foreach和stream().forEach三种集合遍历方式的区别和使用场景

fori
for (int i = 0; i < objects.size(); i++) {}
foreach
for (Object o : objects) {}
fori最普通的循环,可以时候得到当前的索引位置。

foreach 和fori区别不大,foreach是普通fori的增强版用起来更方便。但是没有当前索引。

java8新出的循环方式stream().forEach

objects.stream().forEach(p->{});

最大的特点是并发执行,对于循环内业务量比较多的场景非常适合,比如数据库查询,第三方接口调用等耗时的操作。如果只是简单的逻辑代码,比如组装,赋值等。最好用普通循环,效率更快。因为多线程模式调用线程池的时候必然会耗费一些时间,得不偿失。

你可能感兴趣的:(总结,java)