Java中的 IntStream.Builder build() 和示例
IntStream.Builder build() 构建流,将此构建器转换为构建状态。
句法 :
IntStream build()
返回值:此方法返回构建的流。
注意:流构建器有一个生命周期,从构建阶段开始,在此期间可以添加元素,然后过渡到构建阶段,之后可能无法添加元素。构建阶段从调用 build() 方法开始,该方法创建一个有序流,其元素是按添加顺序添加到流构建器的元素。
以下是说明 build() 方法的示例:
示例 1:
// Java code to show the implementation
// of IntStream.Builder build()
import java.util.stream.IntStream;
class GFG {
// Driver code
public static void main(String[] args)
{
// Creating a Stream in building phase
IntStream.Builder b = IntStream.builder();
// Adding elements into the stream
b.add(1);
b.add(2);
b.add(3);
b.add(4);
// Constructing the built stream using build()
// This will enter the stream in built phase
b.build().forEach(System.out::println);
}
}
输出:
1
2
3
4
示例 2:在调用 build() 方法后尝试添加元素(当流处于构建阶段时)。
// Java code to show the implementation
// of IntStream.Builder build()
import java.util.stream.IntStream;
class GFG {
// Driver code
public static void main(String[] args)
{
// Creating a Stream in building phase
IntStream.Builder b = IntStream.builder();
// Adding elements into the stream
b.add(1);
b.add(2);
b.add(3);
b.add(4);
// Constructing the built stream using build()
// This will enter the stream in built phase
// Now no more elements can be added to this stream
b.build().forEach(System.out::println);
// Trying to add more elements in built phase
// This will cause exception
try {
b.add(50);
}
catch (Exception e) {
System.out.println("\nException: " + e);
}
}
}
输出:
1
2
3
4
Exception: java.lang.IllegalStateException