Встречается на собеседованиях • сегодня

Как работает метод peek в Java Stream

Метод `peek()` в Java Stream — это промежуточная операция, которая позволяет выполнить действие для каждого элемента потока без его изменения. Он принимает `Consumer` и возвращает новый Stream с теми же элементами. **Особенности:** - Не изменяет элементы (как `map`), только "подглядывает" за ними. - Ленивый — выполнится только при наличии терминальной операции. - Полезен для отладки или логгирования промежуточных значений. **Пример:** ```java List names = List.of("Alice", "Bob", "Charlie"); List filtered = names.stream() .peek(name -> System.out.println("Before filter: " + name)) .filter(name -> name.length() > 3) .peek(name -> System.out.println("After filter: " + name)) .toList(); ``` **Вывод:** ``` Before filter: Alice Before filter: Bob Before filter: Charlie After filter: Alice After filter: Charlie ``` ⚠️ Не злоупотребляйте `peek()` для изменения состояния (это нарушает принципы функционального программирования).
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы