Sobes.tech
Junior — Middle

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

sobes.tech AI

Отговор от 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 опростява работата с вложени структури, като ги "разгъва" в един поток от елементи.