Java IntStream.Builder accept()方法
IntStream.Builder accept(int t)用于在流的构建阶段向元素中插入一个元素。它接受一个元素到正在构建的流中。
语法
void accept(int t)
参数。该方法接受一个强制性参数 t ,即要输入到流中的元素。
异常: 当构建器已经过渡到构建状态时,该方法会抛出 IllegalStateException 。这意味着流已经进入了构建阶段,现在不能改变。因此, 没有更多的元素可以被接受到流中 。
下面是一些例子来说明accept()方法。
例1 :
// Java code to show the implementation
// of IntStream.Builder accept(int t)
import java.util.stream.IntStream;
class GFG {
// Driver code
public static void main(String[] args)
{
// Declaring an empty Stream
IntStream.Builder b = IntStream.builder();
// Inserting elements into the stream
// using IntStream.Builder accept(int t)
b.accept(4);
b.accept(5);
b.accept(6);
b.accept(7);
// Creating the Stream
// The stream has now entered the built phase
// printing the elements
System.out.println("Stream successfully built");
b.build().forEach(System.out::println);
}
}
输出。
Stream successfully built
4
5
6
7
例2: 为了说明IllegalStateException
// Java code to show the implementation
// of IntStream.Builder accept(int t)
import java.util.stream.IntStream;
class GFG {
// Driver code
public static void main(String[] args)
{
// Declaring an empty Stream
IntStream.Builder b = IntStream.builder();
// using IntStream.Builder accept(int t)
b.accept(4);
b.accept(5);
b.accept(6);
b.accept(7);
// Creating the Stream
// The stream has now entered the built phase
// printing the elements
System.out.println("Stream successfully built");
b.build().forEach(System.out::println);
// Trying to accept another element into the stream
// Since the Stream is in built phase
// This operation is not possible now
// Hence accept() will throw exception now
try {
b.accept(50);
}
catch (Exception e) {
System.out.println("Exception thrown "
+ "when now accepting element into the stream: "
+ e);
}
}
}
输出。
Stream successfully built
4
5
6
7
Exception thrown when now accepting element into the stream: java.lang.IllegalStateException