📜  Java中的 Stream.Builder add() 方法

📅  最后修改于: 2022-05-13 01:55:21.321000             🧑  作者: Mango

Java中的 Stream.Builder add() 方法

Stream.Builder add(T t)用于在流的构建阶段将元素插入到元素中。它将一个元素添加到正在构建的流中。

句法:

default Stream.Builder add(T t)

参数:此方法添加一个强制参数t ,它是要输入到流中的元素。

异常:此方法抛出IllegalStateException:当构建器已经转换到构建状态时。这意味着流已进入构建阶段,现在不能更改。因此,不能将更多元素添加到流中。

以下是说明 add() 方法的示例:

示例 1:

// Java code to show the implementation
// of Stream.Builder add(T t)
  
import java.util.stream.Stream;
  
class GFG {
  
    // Driver code
    public static void main(String[] args)
    {
  
        // Declaring an empty Stream
        Stream.Builder str_b = Stream.builder();
  
        // Inserting elements into the stream
        // using Stream.Builder add(T t)
        str_b.add("Geeks");
        str_b.add("for");
        str_b.add("GeeksforGeeks");
        str_b.add("Data Structures");
        str_b.add("Geeks Classes");
  
        // Creating the String Stream
        // The stream has now entered the built phase
        Stream s = str_b.build();
  
        // printing the elements
        System.out.println("Stream successfully built");
        s.forEach(System.out::println);
    }
}
输出:
Stream successfully built
Geeks
for
GeeksforGeeks
Data Structures
Geeks Classes

示例 2:说明 IllegalStateException

// Java code to show the implementation
// of Stream.Builder add(T t)
  
import java.util.stream.Stream;
  
class GFG {
  
    // Driver code
    public static void main(String[] args)
    {
  
        // Declaring an empty Stream
        Stream.Builder str_b = Stream.builder();
  
        // using Stream.Builder add(T t)
        str_b.add("5");
        str_b.add("6");
        str_b.add("7");
        str_b.add("8");
        str_b.add("9");
  
        // Creating the String Stream
        // The stream has now entered the built phase
        Stream s = str_b.build();
  
        // printing the elements
        System.out.println("Stream successfully built");
        s.forEach(System.out::println);
  
        // Trying to add another element into the stream
        // Since the Stream is in built phase
        // This operation is not possible now
        // Hence add() will throw exception now
  
        try {
            str_b.add("50");
        }
        catch (Exception e) {
            System.out.println("Exception thrown "
                               + "when now adding element into the stream: "
                               + e);
        }
    }
}
输出:
Stream successfully built
5
6
7
8
9
Exception thrown when now adding element into the stream: java.lang.IllegalStateException