Назад к вопросам
Совкомбанк
Junior — Middle
66
Какие основные виды операций можно выполнять с потоками данных в Java?
Компании, где спрашивали
Ответ от нейросети
sobes.tech AI
В Java с потоками данных (Streams) можно выполнять следующие основные виды операций:
-
Промежуточные операции (Intermediate operations) — возвращают новый поток и позволяют строить цепочку обработки:
filter— фильтрация элементов по условиюmap— преобразование элементовflatMap— преобразование с распаковкой вложенных структурdistinct— удаление дубликатовsorted— сортировка элементовlimitиskip— ограничение и пропуск элементов
-
Терминальные операции (Terminal operations) — завершают обработку и возвращают результат:
forEach— выполнение действия для каждого элементаcollect— сбор элементов в коллекцию или другую структуруreduce— свёртка элементов в одно значениеcount— подсчёт количества элементовanyMatch,allMatch,noneMatch— проверка условийfindFirst,findAny— поиск элементов
Пример:
List<String> names = Arrays.asList("Anna", "Bob", "Charlie", "David");
List<String> filtered = names.stream()
.filter(name -> name.length() > 3)
.map(String::toUpperCase)
.sorted()
.collect(Collectors.toList());
Здесь мы фильтруем имена длиной больше 3, преобразуем их в верхний регистр, сортируем и собираем в список.