This example will show how to convert a Stream into an Array using Java 8. A streams terminal operation toArray
will return an array array containing the elements of this stream. You have the option to provide an overloaded generator function to return an array of a specific type. Other examples that show converting a stream to an array are swap position of stream elements, convert collection to array using java and sort array in java.
Stream to array of strings
@Test
public void stream_of_strings_to_array() {
String[] stringArray = Stream.of("One", "Two", "Three").toArray(
String[]::new);
logger.info(Arrays.toString(stringArray));
assertTrue(stringArray.length == 3);
}
Stream to array of ints
@Test
public void stream_of_strings_to_ints_array() {
Integer[] stringArray = Stream.of(1, 2, 3).toArray(Integer[]::new);
logger.info(Arrays.toString(stringArray));
assertTrue(stringArray.length == 3);
}
IntStream to array of ints
@Test
public void int_stream_to_array() {
int[] intArray = IntStream.of(1, 2, 3).toArray();
logger.info(Arrays.toString(intArray));
assertTrue(intArray.length == 3);
}
LongStream to array of longs
@Test
public void long_stream_to_array() {
long[] longArray = LongStream.of(1, 2, 3).toArray();
logger.info(Arrays.toString(longArray));
assertTrue(longArray.length == 3);
}
DoubleStream array of doubles
@Test
public void double_stream_to_array() {
double[] doubleArray = DoubleStream.of(1, 2, 3).toArray();
logger.info(Arrays.toString(doubleArray));
assertTrue(doubleArray.length == 3);
}