스트림을 배열로 변환하는 방법

JavaBeginner
지금 연습하기

소개

Java 에서 스트림 (stream) 은 함수형 방식으로 연산을 수행할 수 있는 일련의 요소 시퀀스입니다. 반면에, 배열 (array) 은 유사한 유형의 요소를 저장하는 객체입니다. 이 랩에서는 Java 에서 스트림을 배열로 변환하는 방법을 배우겠습니다.

정수 스트림을 int 배열로 변환

이 단계에서는 IntStreamrangeClosed() 메서드를 사용하여 정수 시퀀스를 생성하고, 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);
        }
    }
}

코드의 출력 결과는 다음과 같습니다.

1
2
3
4
5

문자열 스트림을 String 배열로 변환

이 단계에서는 리스트에서 문자열 값을 스트림으로 생성하고, 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);
    }
}

코드의 출력 결과는 다음과 같습니다.

UK
US
BR

UK
US
BR

요약

이 랩에서는 Java 에서 스트림을 배열로 변환하는 방법을 배웠습니다. 스트림의 toArray() 메서드를 사용하여 이를 배열로 변환했습니다. 이 메서드의 구문은 간단하며, 지정된 유형의 배열을 반환합니다. 정수 및 문자열 스트림을 해당 배열로 변환하는 예제를 살펴보았습니다.