Sobes.tech
Назад к вопросам
Junior — Middle
52

Какова концепция использования flatMap при работе с коллекциями?

Компании, где спрашивали
СБЕРСБЕР

Ответ от нейросети

sobes.tech AI

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

Например, если у вас есть список списков, flatMap поможет получить один список всех элементов из всех вложенных списков.

Пример на Java:

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

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

System.out.println(flatList); // [a, b, c, d]

Таким образом, flatMap упрощает работу с вложенными структурами, позволяя "расплющить" их в один поток элементов.