Back to questions
СБЕР
Junior — Middle
92
Можешь перечислить основные операции, которые выполняются в конце потоковой обработки данных?
Companies where asked
Answer from AI
sobes.tech AI
В Java Stream API операции делятся на промежуточные и терминальные (конечные). В конце потоковой обработки данных всегда вызывается терминальная операция, которая запускает вычисления и возвращает результат или побочный эффект.
Основные терминальные операции:
- collect() — собирает элементы потока в коллекцию или другой контейнер.
- forEach() — выполняет действие для каждого элемента (обычно для побочных эффектов).
- reduce() — сводит элементы к одному значению с помощью аккумулятора.
- count() — возвращает количество элементов.
- anyMatch(), allMatch(), noneMatch() — проверяют соответствие элементов условию.
- findFirst(), findAny() — возвращают первый или любой элемент, если он есть.
Пример:
List<String> names = Arrays.asList("Anna", "Bob", "Charlie");
long count = names.stream()
.filter(name -> name.startsWith("A"))
.count();
System.out.println(count); // Выведет количество имен, начинающихся с "A"
Без терминальной операции поток не будет обработан.