Как объединить массивы

JavaJavaBeginner
Практиковаться сейчас

💡 Этот учебник переведен с английского с помощью ИИ. Чтобы просмотреть оригинал, вы можете перейти на английский оригинал

Введение

В Java часто необходимо объединить два или более массивов в один массив. Это можно сделать с использованием API потоков Java 8. В этом практическом занятии мы узнаем, как объединить несколько массивов в один массив с использованием Java-кода.

Создайте Java-файл

Сначала создайте Java-файл с именем ArraysJoin.java в каталоге ~/project/, используя следующую команду:

touch ~/project/ArraysJoin.java

Импортируйте необходимую библиотеку

Импортируйте необходимую библиотеку для использования API потоков Java 8.

import java.util.stream.Stream;

Определите два массива

Определите два массива, которые вы хотите объединить. Здесь мы берем два строковых массива asia и europe.

String[] asia = new String[]{"India", "Russia", "Japan"};
String[] europe = new String[]{"Poland", "Germany", "France"};

Объедините массивы с использованием API Stream

Теперь инициализируйте новый массив, который является комбинацией обоих массивов, с использованием API Stream Java 8.

String[] countries = Stream.of(asia,europe).flatMap(Stream::of).toArray(String[]::new);

В приведенном выше примере метод flatMap() используется для объединения двух массивов и преобразования их в поток строк, а метод toArray() преобразует поток в массив строк.

Распечатайте объединенный массив

Наконец, распечатайте элементы объединенного массива с использованием цикла for.

for (String country : countries) {
    System.out.println(country);
}

Конкатенация потоков

Мы также можем объединить два потока, используя метод 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

Результат:

Индия
Россия
Япония
Польша
Германия
Франция
1
2
3
4
5
6

Резюме

В этом практическом занятии мы узнали, как объединять несколько массивов в один массив с использованием API потоков Java 8. Мы также узнали, как конкатенировать несколько потоков в один поток. Концепция объединения и конкатенации массивов и потоков используется в программировании при работе с большими объемами данных, которые необходимо хранить в единой платформе-источнике.