Java 8流的peek API

6 浏览
0 Comments

Java 8流的peek API

我尝试使用Java 8的peek方法运行以下代码片段:

List list = Arrays.asList("Bender", "Fry", "Leela");
list.stream().peek(System.out::println);

然而在控制台上没有打印任何内容。如果我改为:

list.stream().peek(System.out::println).forEach(System.out::println);

我会看到以下输出,既有peek的输出,也有foreach的调用。

Bender
Bender
Fry
Fry
Leela
Leela

foreachpeek都接受一个(Consumer action)参数。

那么为什么输出结果不同呢?

0