1.方法描述
* peek() : 循环遍历所有的元素,但是返回值是一个Stream,属于非终结方法(不常用)
* forEach() : 循环遍历所有的元素,但是是终结方法
* 【最主要的区别】
* peek返回值是Stream,可以继续进行链式调用;
* forEach没有返回值。
2.使用案例
2.1 案例代码
package com.northcastle.I_stream;
import java.util.stream.Stream;
public class StreamTest15Peek {
public static void main(String[] args) {
String[] strs = {"100", "200", "300"};
Stream.of(strs)
.peek(s -> { System.out.println("peek : " + s);}) // 非终结方法,返回仍然是 Stream
.sorted() // 有状态的,必须等待peek执行完成之后再执行
.forEach(s -> {System.out.println("forEach = " + s);}); // 终结方法
}
}
2.2 运行结果
3.完成
Congratulations!
You are one step closer to success!