Встречается на собеседованиях • сегодня
В чем разница между reduce и использованием цикла
`reduce` и цикл решают схожие задачи, но с разным подходом.
**reduce** (функциональный стиль):
- Читаемость выше, особенно для простых операций (сумма, конкатенация).
- Неизменяемость: не требует внешних переменных.
- Пример:
```java
List numbers = List.of(1, 2, 3);
int sum = numbers.stream().reduce(0, (a, b) -> a + b);
```
**Цикл** (императивный стиль):
- Гибкость: можно добавлять сложную логику (условия, break).
- Производительность: иногда быстрее, особенно для примитивов.
- Пример:
```java
int sum = 0;
for (int num : numbers) {
sum += num;
}
```
**Выбор зависит от задачи:**
- `reduce` — для простых агрегаций в функциональном стиле.
- Цикл — когда нужен контроль над процессом или сложная логика.

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