Sobes.tech
Junior — Middle
131

Jaki jest główny cel metody flatMap w przetwarzaniu strumieni danych przy użyciu API Stream?

Firmy, w których zadano pytania
Тетрасофт

Odpowiedź od AI

sobes.tech AI

Метод flatMap в Stream API используется для преобразования каждого элемента исходного потока в новый поток, а затем объединения (флэтирования) всех этих потоков в один плоский поток.

Основное назначение — развернуть вложенные структуры данных (например, списки списков) в единый поток элементов, чтобы упростить дальнейшую обработку.

Пример:

List<List<String>> listOfLists = Arrays.asList(
    Arrays.asList("a", "b"),
    Arrays.asList("c", "d")
);

List<String> flatList = listOfLists.stream()
    .flatMap(List::stream)
    .collect(Collectors.toList());

// flatList будет содержать: ["a", "b", "c", "d"]

Таким образом, flatMap помогает преобразовать поток потоков в один поток элементов, что облегчает работу с вложенными коллекциями.