Junior — Middle
Являва ли се методът forEach в Java крайна точка или междинен етап при обработката на потоци?
sobes.tech AI
Отговор от AI
В Java методът forEach за потоци (Stream.forEach) е терминална (крайна) операция, то есть точката на завършване на обработката на потока. След извикването на forEach, потокът се счита за изразходван и не е възможно да се извършват допълнителни операции върху него.
Пример:
Stream.of(1, 2, 3)
.filter(n -> n > 1) // междинна операция
.forEach(System.out::println); // терминална операция
Тук filter е междинна операция, а forEach е терминална, която стартира изпълнението на цялата верига и извежда елементите.