Added in API level 24

Stream.Builder

public static interface Stream.Builder
implements Consumer<T>

java.util.stream.Stream.Builder<T>


A mutable builder for a Stream. This allows the creation of a Stream by generating elements individually and adding them to the Builder (without the copying overhead that comes from using an ArrayList as a temporary buffer.)

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.

See also:

Summary

Public methods

abstract void accept(T t)

Adds an element to the stream being built.

default Builder<T> add(T t)

Adds an element to the stream being built.

abstract Stream<T> build()

Builds the stream, transitioning this builder to the built state.

Inherited methods

Public methods

accept

Added in API level 24
public abstract void accept (T t)

Adds an element to the stream being built.

Parameters
t T: the input argument

Throws
IllegalStateException if the builder has already transitioned to the built state

add

Added in API level 24
public Builder<T> add (T t)

Adds an element to the stream being built.

Implementation Requirements:
  • The default implementation behaves as if:
    accept(t)
         return this;
     
Parameters
t T: the element to add

Returns
Builder<T> this builder

Throws
IllegalStateException if the builder has already transitioned to the built state

build

Added in API level 24
public abstract Stream<T> build ()

Builds the stream, transitioning this builder to the built state. An IllegalStateException is thrown if there are further attempts to operate on the builder after it has entered the built state.

Returns
Stream<T> the built stream

Throws
IllegalStateException if the builder has already transitioned to the built state