Встречается на собеседованиях • сегодня
Что такое lazy evaluation в Stream
Lazy evaluation в Stream означает, что операции не выполняются сразу, а откладываются до вызова терминальной операции. Это позволяет оптимизировать обработку данных, избегая лишних вычислений.
Пример:
```java
List numbers = Arrays.asList(1, 2, 3, 4, 5);
Stream stream = numbers.stream()
.filter(n -> {
System.out.println("Filtering " + n);
return n % 2 == 0;
})
.map(n -> {
System.out.println("Mapping " + n);
return n * n;
});
// Ничего не выведет - нет терминальной операции
stream.count(); // Вызов терминальной операции
```
Вывод появится только после вызова `count()`. Промежуточные операции (`filter`, `map`) объединяются в конвейер и выполняются за один проход по данным при терминальной операции.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы