Sobes.tech
Junior — Middle
107

Stream API-деги peek ыкмасынын ролу жана кайсы учурларда колдонулат?

Кайсыл жерде компаниялар сурады
СБЕРСБЕР

AIден жооп

sobes.tech AI

Метод peek в Stream API используется для промежуточного просмотра элементов потока без изменения самого потока. Он позволяет выполнить некоторую операцию (например, логирование или отладку) над каждым элементом, проходящим через поток, не влияя на результат.

peek принимает Consumer и возвращает новый Stream, поэтому его можно вставлять в цепочку вызовов для наблюдения за элементами.

Пример использования:

List<String> list = Arrays.asList("one", "two", "three");
list.stream()
    .filter(s -> s.length() > 3)
    .peek(s -> System.out.println("Filtered value: " + s))
    .map(String::toUpperCase)
    .forEach(System.out::println);

В этом примере peek выводит отфильтрованные значения перед преобразованием.

Основное применение peek — отладка и логирование промежуточных результатов в цепочке Stream, не изменяя поток.