Sobes.tech
Junior — Middle

Какви промени ще настъпят, ако използвате метода flatMap за обработка на списък Long, поставен вътре в обект?

sobes.tech AI

Отговор от AI

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

Если у вас есть объект, внутри которого хранится список Long, и вы применяете flatMap к этому списку, то вместо потока списков вы получите плоский поток элементов типа Long. Это позволяет упростить дальнейшую обработку, например, фильтрацию или агрегацию.

Пример:

List<MyObject> objects = ...; // каждый объект содержит List<Long> numbers

List<Long> allNumbers = objects.stream()
    .flatMap(obj -> obj.getNumbers().stream())
    .collect(Collectors.toList());

В результате allNumbers будет содержать все числа из всех списков, объединённые в один список без вложенности.