소개
Java 에서는 두 개 이상의 배열을 하나의 배열로 결합해야 하는 경우가 많습니다. 이는 Java 8 스트림 API 를 사용하여 수행할 수 있습니다. 이 Lab 에서는 Java 코드를 사용하여 여러 배열을 하나의 배열로 결합하는 방법을 배우겠습니다.
Java 파일 생성
먼저, 다음 명령을 사용하여 ~/project/ 디렉토리에 ArraysJoin.java 라는 Java 파일을 생성합니다.
touch ~/project/ArraysJoin.java
필요한 라이브러리 가져오기
Java 8 스트림 API 를 사용하기 위해 필요한 라이브러리를 임포트합니다.
import java.util.stream.Stream;
두 개의 배열 정의
결합하려는 두 개의 배열을 정의합니다. 여기서는 두 개의 문자열 배열 asia와 europe를 사용합니다.
String[] asia = new String[]{"India", "Russia", "Japan"};
String[] europe = new String[]{"Poland", "Germany", "France"};
Stream API 를 사용하여 배열 결합
이제 Java 8 Stream API 를 사용하여 두 배열을 결합한 새로운 배열을 초기화합니다.
String[] countries = Stream.of(asia,europe).flatMap(Stream::of).toArray(String[]::new);
위 예제에서 flatMap() 메서드는 두 배열을 병합하여 문자열 스트림으로 변환하는 데 사용되며, toArray() 메서드는 스트림을 문자열 배열로 변환합니다.
결합된 배열 출력
마지막으로, for 루프를 사용하여 결합된 배열 요소를 출력합니다.
for (String country : countries) {
System.out.println(country);
}
Stream 연결 (Concat)
concat() 메서드를 사용하여 두 스트림을 병합할 수도 있습니다. 이 메서드는 지정된 유형의 스트림을 반환합니다. 다음 예제는 두 개 이상의 스트림을 단일 스트림으로 연결하는 방법을 보여줍니다.
Stream<Integer> stream1 = Stream.of(1, 2, 3);
Stream<Integer> stream2 = Stream.of(4, 5, 6);
//concat arrays
Stream<Integer> result = Stream.concat(stream1, stream2);
result.forEach(System.out::println);
Java 파일 컴파일
다음 명령을 사용하여 Java 파일을 컴파일합니다.
javac ~/project/ArraysJoin.java
Java 프로그램 실행
다음 명령을 사용하여 Java 프로그램을 실행합니다.
java -cp ~/project ArraysJoin
출력:
India
Russia
Japan
Poland
Germany
France
1
2
3
4
5
6
요약
이 랩에서는 Java 8 스트림 API 를 사용하여 여러 배열을 단일 배열로 결합하는 방법을 배웠습니다. 또한 여러 스트림을 단일 스트림으로 연결하는 방법도 배웠습니다. 배열과 스트림을 결합하고 연결하는 개념은 단일 소스 플랫폼에 저장해야 하는 대량의 데이터를 처리할 때 프로그래밍에서 사용됩니다.



