要将Stream转换为数组,Stream对象有toArray()方法的重载版本。该toArray(IntFunction<A[]> generator)方法使用提供的生成器函数分配包含此流元素的数组,以分配返回的数组。
String[] stringArr = { "a", "b", "c", "d" };
Stream<String> stream = Stream.of(stringArr);
String[] arr = stream.toArray(size -> new String[size]);
System.out.println(Arrays.toString(arr));
我们还可以使用功能相同的方法引用格式。
String[] arr = stream.toArray(String[]::new);