Встречается на собеседованиях • сегодня
Что такое reduce
`reduce` — это операция свертки, которая последовательно обрабатывает элементы потока (Stream) и объединяет их в один результат. Принимает начальное значение (identity) и функцию-аккумулятор (BinaryOperator).
Пример:
```java
List numbers = List.of(1, 2, 3, 4);
int sum = numbers.stream()
.reduce(0, (a, b) -> a + b); // sum = 10
```
Особенности:
- Если поток пустой, возвращает `identity`.
- Без `identity` возвращает `Optional`, так как результат может отсутствовать.
- Полезен для агрегации: сумма, произведение, конкатенация строк и т.д.
Пример без identity:
```java
Optional product = numbers.stream()
.reduce((a, b) -> a * b); // Optional[24]
```

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