DoubleStream.Builder build() in Java

DoubleStream.Builder build() builds the stream, transitioning this builder to the built state.

Syntax :

DoubleStream build()

Return Value: This method returns the built stream.



Note: A stream builder has a lifecycle, which starts in a building phase, during which elements can be added, and then transitions to a built phase, after which elements may not be added. The built phase begins when the build() method is called, which creates an ordered stream whose elements are the elements that were added to the stream builder, in the order they were added.

Below are the examples to illustrate build() method:

Example 1:

filter_none

edit
close

play_arrow

link
brightness_4
code

// Java code to show the implementation
// of DoubleStream.Builder build()
  
import java.util.stream.DoubleStream;
  
class GFG {
  
    // Driver code
    public static void main(String[] args)
    {
  
        // Creating a Stream in building phase
        DoubleStream.Builder b = DoubleStream.builder();
  
        // Adding elements into the stream
        b.add(1.2);
        b.add(2.4);
        b.add(3.87);
        b.add(4.78);
  
        // Constructing the built stream using build()
        // This will enter the stream in built phase
        b.build().forEach(System.out::println);
    }
}

chevron_right


Output:

1.2
2.4
3.87
4.78

Example 2: Trying to add element in after calling build() method (when stream is in built phase).

filter_none

edit
close

play_arrow

link
brightness_4
code

// Java code to show the implementation
// of DoubleStream.Builder build()
  
import java.util.stream.DoubleStream;
  
class GFG {
  
    // Driver code
    public static void main(String[] args)
    {
        // Creating a Stream in building phase
        DoubleStream.Builder b = DoubleStream.builder();
  
        // Adding elements into the stream
        b.add(1.2);
        b.add(2.4);
        b.add(3.87);
        b.add(4.78);
  
        // 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.547);
        }
        catch (Exception e) {
            System.out.println("\nException: " + e);
        }
    }
}

chevron_right


Output:

1.2
2.4
3.87
4.78

Exception: java.lang.IllegalStateException


My Personal Notes arrow_drop_up

In love with a semicolon because sometimes i miss it so badly)

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.