| Return type | Name and parameters | 
|---|---|
| Stream | plus(Iterable rhs)Returns a lazily concatenated stream whose elements are all the elements of this stream followed by all the elements of the Iterable object. | 
| Stream | plus(Collection rhs)Returns a lazily concatenated stream whose elements are all the elements of this stream followed by all the elements of the Collection object. | 
| Stream | plus(Stream rhs)Returns a lazily concatenated stream whose elements are all the elements of this stream followed by all the elements of the second stream. | 
| Object[] | toArray(Class type)Returns an array containing the elements of the stream. | 
| List | toList()Accumulates the elements of stream into a new List. | 
| Set | toSet()Accumulates the elements of stream into a new Set. | 
Returns a lazily concatenated stream whose elements are all the elements of this stream followed by all the elements of the Iterable object.
import java.util.stream.Stream assert (Stream.of(1) + [2]).toList() == [1,2] assert (Stream.of(1) + []).toList() == [1]
Returns a lazily concatenated stream whose elements are all the elements of this stream followed by all the elements of the Collection object.
import java.util.stream.Stream assert (Stream.of(1) + [2]).toList() == [1,2] assert (Stream.of(1) + []).toList() == [1]
Returns a lazily concatenated stream whose elements are all the elements of this stream followed by all the elements of the second stream.
import java.util.stream.Stream assert (Stream.of(1) + Stream.<Integer>empty()).toList() == [1] assert (Stream.of(1) + Stream.of(2)).toList() == [1,2] assert (Stream.of(1) + [2].stream()).toList() == [1,2]
Returns an array containing the elements of the stream.
import static groovy.test.GroovyAssert.shouldFail
assert Arrays.equals([].stream().toArray(Object), new Object[0])
assert Arrays.equals([].stream().toArray(String), new String[0])
assert Arrays.equals([].stream().toArray(String[]), new String[0][])
assert Arrays.equals(['x'].stream().toArray(Object), ['x'].toArray())
assert Arrays.equals(['x'].stream().toArray(String), ['x'] as String[])
assert Arrays.deepEquals([['x'] as String[]].stream().toArray(String[]), [['x'] as String[]] as String[][])
assert Arrays.equals(['x'].stream().toArray(CharSequence), ['x'] as CharSequence[])
shouldFail(ArrayStoreException) {
    ['x'].stream().toArray(Thread)
}
shouldFail(IllegalArgumentException) {
    ['x'].stream().toArray((Class) null)
}
// Stream#toArray(IntFunction) should still be used for closure literal:
assert Arrays.equals(['x'].stream().toArray { n -> new String[n] }, ['x'] as String[])
// Stream#toArray(IntFunction) should still be used for method reference:
assert Arrays.equals(['x'].stream().toArray(String[]::new), ['x'] as String[])
                                    
                                    type -  the array element typeAccumulates the elements of stream into a new List.
java.util.List instanceAccumulates the elements of stream into a new Set.
java.util.Set instance