Введение
В Java поток (stream) представляет собой последовательность элементов, над которыми можно выполнять операции в функциональном стиле. С другой стороны, массив (array) - это объект, хранящий элементы одного типа. В этом лабе мы узнаем, как преобразовать поток в массив в Java.
Преобразовать поток целых чисел в массив int
В этом шаге мы создадим последовательность целых чисел с использованием метода rangeClosed() класса IntStream и преобразуем ее в массив с использованием метода toArray().
import java.util.stream.IntStream;
public class StreamToArray {
public static void main(String[] args){
IntStream integerStream = IntStream.rangeClosed(1, 5);
// преобразуем поток в массив int
int[] arr = integerStream.toArray();
// выводим каждый элемент массива
for(int e: arr) {
System.out.println(e);
}
}
}
Результат выполнения кода будет следующим:
1
2
3
4
5
Преобразовать поток строк в массив строк
В этом шаге мы создадим поток строковых значений из списка и преобразуем его в массив с использованием метода toArray().
import java.util.Arrays;
import java.util.List;
import java.util.stream.Stream;
public class StreamToArray {
public static void main(String[] args){
Stream<String> stream = List.of("UK", "US", "BR").stream();
// преобразуем поток строк в массив строк
String[] strArray = stream.toArray(String[]::new);
// выводим каждый элемент массива строк
for(String str : strArray) {
System.out.println(str);
}
// преобразуем массив строк обратно в поток
Stream<String> stringStream = Arrays.stream(strArray);
// выводим каждый элемент потока
stringStream.forEach(System.out::println);
}
}
Результат выполнения кода будет следующим:
UK
US
BR
UK
US
BR
Резюме
В этом лабе мы узнали, как преобразовать поток в массив в Java. Мы использовали метод toArray() потока для его преобразования в массив. Синтаксис этого метода прост, и он возвращает массив указанного типа. Мы увидели примеры преобразования потоков целых чисел и строк в соответствующие массивы.



