Назад к вопросам
СБЕР
Junior — Middle
64
Возможна ли ситуация, когда у Stream в Java API отсутствуют промежуточные операции?
Компании, где спрашивали
Ответ от нейросети
sobes.tech AI
Да, в Java Stream API возможна ситуация, когда у Stream отсутствуют промежуточные операции. Промежуточные операции — это операции, которые возвращают новый Stream и позволяют строить цепочку преобразований (например, filter, map, sorted). Однако Stream может состоять только из терминальной операции, например, forEach, без промежуточных операций. В этом случае Stream просто перебирает элементы источника и применяет терминальную операцию.
Пример:
List<String> list = Arrays.asList("a", "b", "c");
list.stream().forEach(System.out::println); // нет промежуточных операций
Такой Stream существует и корректно работает, хотя обычно для обработки данных используют цепочки с промежуточными операциями.