Introdução
Em Java, um stream (fluxo) é uma sequência de elementos sobre a qual podemos realizar operações em uma abordagem funcional. Por outro lado, um array (vetor) é um objeto que armazena elementos de um tipo semelhante. Neste laboratório, aprenderemos como converter um stream em um array em Java.
Converter um Stream de Inteiros para um Array de int
Nesta etapa, criaremos uma sequência de inteiros usando o método rangeClosed() de IntStream e a converteremos em um array usando o método toArray().
import java.util.stream.IntStream;
public class StreamToArray {
public static void main(String[] args){
IntStream integerStream = IntStream.rangeClosed(1, 5);
// convert the stream into an int array
int[] arr = integerStream.toArray();
// print each element of the array
for(int e: arr) {
System.out.println(e);
}
}
}
A saída do código será a seguinte:
1
2
3
4
5
Converter um Stream de Strings para um Array de Strings
Nesta etapa, criaremos um stream de valores de string a partir de uma lista e o converteremos em um array usando o método 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();
// convert the string stream into a string array
String[] strArray = stream.toArray(String[]::new);
// print each element of the string array
for(String str : strArray) {
System.out.println(str);
}
// convert the string array into a stream again
Stream<String> stringStream = Arrays.stream(strArray);
// print each element of the stream
stringStream.forEach(System.out::println);
}
}
A saída do código será a seguinte:
UK
US
BR
UK
US
BR
Resumo
Neste laboratório, aprendemos como converter um stream em um array em Java. Usamos o método toArray() do stream para convertê-lo em um array. A sintaxe para este método é direta, e ele retorna um array do tipo especificado. Vimos exemplos de conversão de streams de inteiros e strings em seus respectivos arrays.



