Метод joining
Метод joining класса Collectors является
коллектором, который объединяет элементы потока в одну
строку. Существует три перегрузки метода: без параметров,
с одним параметром-разделителем и с тремя параметрами -
разделителем, префиксом и суффиксом. В первый параметр
мы передаем разделитель, который вставляется между
элементами, во второй - префикс, добавляемый в начало
результата, в третий - суффикс, добавляемый в конец
результата.
Синтаксис
Collectors.joining()
Collectors.joining(delimiter)
Collectors.joining(delimiter, prefix, suffix)
Пример
Давайте объединим элементы списка в одну строку без разделителя:
import java.util.List;
import java.util.stream.Collectors;
public class Main
{
public static void main(String[] args)
{
List<String> list = List.of("a", "b", "c", "d", "e");
String res = list.stream()
.collect(Collectors.joining());
System.out.println(res);
}
}
Результат выполнения кода:
"abcde"
Пример
Давайте объединим элементы списка в одну строку с разделителем:
import java.util.List;
import java.util.stream.Collectors;
public class Main
{
public static void main(String[] args)
{
List<String> list = List.of("a", "b", "c", "d", "e");
String res = list.stream()
.collect(Collectors.joining(", "));
System.out.println(res);
}
}
Результат выполнения кода:
"a, b, c, d, e"
Пример
Давайте объединим элементы списка в одну строку с разделителем, префиксом и суффиксом:
import java.util.List;
import java.util.stream.Collectors;
public class Main
{
public static void main(String[] args)
{
List<String> list = List.of("a", "b", "c", "d", "e");
String res = list.stream()
.collect(Collectors.joining(", ", "[", "]"));
System.out.println(res);
}
}
Результат выполнения кода:
"[a, b, c, d, e]"
Пример
Давайте объединим числа, преобразованные в строки, с разделителем:
import java.util.List;
import java.util.stream.Collectors;
public class Main
{
public static void main(String[] args)
{
List<Integer> list = List.of(1, 2, 3, 4, 5);
String res = list.stream()
.map(String::valueOf)
.collect(Collectors.joining("-"));
System.out.println(res);
}
}
Результат выполнения кода:
"1-2-3-4-5"
Смотрите также
-
класс
Collectors,
который содержит коллекторы для потоков -
метод
toList,
который собирает элементы в список -
метод
mapping,
который преобразует элементы перед сборкой -
метод
reducing,
который сворачивает элементы в одно значение