배열 결합 방법

JavaBeginner
지금 연습하기

소개

Java 에서는 두 개 이상의 배열을 하나의 배열로 결합해야 하는 경우가 많습니다. 이는 Java 8 스트림 API 를 사용하여 수행할 수 있습니다. 이 Lab 에서는 Java 코드를 사용하여 여러 배열을 하나의 배열로 결합하는 방법을 배우겠습니다.

Java 파일 생성

먼저, 다음 명령을 사용하여 ~/project/ 디렉토리에 ArraysJoin.java 라는 Java 파일을 생성합니다.

touch ~/project/ArraysJoin.java

필요한 라이브러리 가져오기

Java 8 스트림 API 를 사용하기 위해 필요한 라이브러리를 임포트합니다.

import java.util.stream.Stream;

두 개의 배열 정의

결합하려는 두 개의 배열을 정의합니다. 여기서는 두 개의 문자열 배열 asiaeurope를 사용합니다.

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 를 사용하여 여러 배열을 단일 배열로 결합하는 방법을 배웠습니다. 또한 여러 스트림을 단일 스트림으로 연결하는 방법도 배웠습니다. 배열과 스트림을 결합하고 연결하는 개념은 단일 소스 플랫폼에 저장해야 하는 대량의 데이터를 처리할 때 프로그래밍에서 사용됩니다.