流的forEach 和forEach选用哪个更换
时间: 2024-06-07 10:07:55 浏览: 75
流的 `forEach` 和普通的 `forEach` 主要有以下几个区别:
1. `Stream.forEach` 是一种 terminal 操作,而 `Collection.forEach` 是一种 intermediate 操作;
2. `Stream.forEach` 是一种迭代器模式,而 `Collection.forEach` 是一种命令模式;
3. `Stream.forEach` 可以并行执行,而 `Collection.forEach` 只能顺序执行。
因此,如果你需要对一个集合进行遍历并执行某些操作,可以使用 `Collection.forEach`。如果你需要对一个流进行遍历并执行某些操作,可以使用 `Stream.forEach`。如果你需要对一个集合进行并行操作,可以使用 `parallelStream().forEach`。
需要注意的是,如果你需要进行某些操作并返回一个新的集合或流,那么应该使用 `map`、`filter` 等 intermediate 操作,而不是 `forEach`。
阅读全文