Back to questions
IT One
Junior — Middle
55
Объясните принцип работы метода конвейера в Stream и его особенности.
Companies where asked
Answer from AI
sobes.tech AI
Метод конвейера (pipeline) в Stream API Java представляет собой цепочку вызовов промежуточных операций (например, filter, map), которые возвращают новый Stream, и завершается терминальной операцией (например, collect, forEach). Промежуточные операции ленивы — они не выполняются сразу, а накапливаются в конвейере. Выполнение происходит только при вызове терминальной операции, которая инициирует проход по данным и применяет все операции последовательно.
Особенности:
- Ленивость: операции не выполняются до терминальной операции.
- Возможность оптимизации: Stream может объединять операции для повышения производительности.
- Иммутабельность: исходный Stream не изменяется, каждая операция возвращает новый Stream.
Пример:
List<String> result = list.stream()
.filter(s -> s.startsWith("A"))
.map(String::toUpperCase)
.collect(Collectors.toList());