Junior — Middle
66
Что происходит на выходе при использовании метода flatMap для преобразования коллекции объектов?
Ответ от нейросети
sobes.tech AI
Метод flatMap в Java используется для преобразования элементов коллекции, при этом каждый элемент может быть преобразован в поток (Stream) из нуля или более элементов. В итоге все эти потоки объединяются в один плоский поток, то есть происходит "выравнивание" вложенных структур.
На выходе получается единый поток, содержащий все элементы из всех потоков, которые были созданы для каждого исходного элемента.
Пример:
List<List<String>> listOfLists = Arrays.asList(
Arrays.asList("a", "b"),
Arrays.asList("c", "d", "e")
);
List<String> flatList = listOfLists.stream()
.flatMap(Collection::stream)
.collect(Collectors.toList());
System.out.println(flatList); // [a, b, c, d, e]
Здесь flatMap преобразует каждый вложенный список в поток элементов, а затем объединяет их в один поток, который собирается в итоговый список.