stream.peek应用
时间: 2023-08-15 19:13:12 浏览: 158
stream.peek 是一个在流中查看下一个元素而不消耗它的方法。它可以用于各种情况,例如在处理流时查看下一个元素的值,而不改变流的状态。
在编程中,流(Stream)是一种用于处理集合的抽象概念。它提供了一种流式处理元素的方式,可以进行各种操作,如过滤、映射、排序等。
stream.peek 方法可以用于查看流中的下一个元素,但不会改变流的状态。这意味着在调用 peek 方法后,你仍然可以对流进行其他操作,如调用 filter、map、forEach 等方法。
以下是一个使用 stream.peek 方法的示例:
```java
List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5);
numbers.stream()
.peek(System.out::println) // 查看下一个元素,不消耗它
.filter(n -> n % 2 == 0) // 过滤出偶数
.forEach(System.out::println); // 打印偶数
// 输出结果:
// 1
// 2
// 2
// 3
// 4
// 4
// 5
```
在上面的示例中,我们使用 stream.peek 方法来查看流中的下一个元素,并使用 System.out.println 打印它。然后,我们使用 filter 方法过滤出偶数,并使用 forEach 方法打印偶数。
需要注意的是,stream.peek 方法只用于查看下一个元素,而不会改变流的状态。如果你想要消耗流中的元素,应该使用其他操作方法,如 forEach、collect 等。
阅读全文