Java中Collection.stream()。forEach()和Collection.forEach()之间的区别
Collection.stream()。forEach()和Collection.forEach()都用于遍历集合。
Collection.forEach()使用集合的迭代器。大多数集合在迭代它们时都不允许进行结构上的修改。如果在迭代过程中添加或删除任何元素,它们将立即引发并发修改异常。如果Collection.forEach()在同步的集合上进行迭代,则它们将锁定集合的段并在所有调用中保留它。
Collection.stream()。forEach()也用于迭代集合,但是它首先将集合转换为流,然后对集合的流进行迭代,因此处理顺序是不确定的。它还会引发并发修改异常,如果在对其进行迭代时发生任何结构更改,它将立即引发异常。
1
基本的
Collection.forEach()使用集合的迭代器
Collection.stream()。forEach()也用于迭代集合,但它首先将集合转换为流,然后对集合的流进行迭代
2
订购
如果已指定,则始终按Iterable的迭代顺序执行。
订单未定义
3
锁
如果在同步集合上发生迭代,则它将锁定集合并在所有调用中保留它
它不会锁定收藏
4。
例外
如果集合中发生任何结构修改,它将立即引发异常
稍后将引发异常
示例Collection.stream()。forEach
import java.util.ArrayList;
import java.util.List;
public class Main {
public static void main(String[] args) {
List list= new ArrayList();
list.add("Ram");
list.add("TutorialPoints");
list.stream().forEach(System.out::print);
}
}示例Collection.forEach
import java.util.ArrayList;
import java.util.List;
public class Main {
public static void main(String[] args) {
List list= new ArrayList();
list.add("Ram");
list.add("TutorialPoints");
list.forEach(System.out::print);
}
}热门推荐
10 高一祝福语简短 励志
11 立秋节气简短祝福语
12 简短公司周年祝福语大全
13 中考感言简短祝福语大全
14 体育老师简短祝福语
15 干杯生日祝福语简短独特
16 特别简短的祝福语老师
17 朋友坐车走了祝福语简短
18 给英雄的祝福语简短