Встречается на собеседованиях • сегодня
В чем разница между использованием обычного цикла и Stream API
Обычный цикл (for, while) — императивный подход, где разработчик явно управляет итерациями и состоянием. Stream API — декларативный, фокусируется на *что* сделать, а не *как*.
**Ключевые отличия:**
1. **Читаемость** — Stream лаконичнее для цепочек операций (filter, map, reduce).
2. **Параллелизм** — `parallelStream()` упрощает распараллеливание.
3. **Ленивость** — Stream выполняет операции только при терминальной (collect, forEach).
**Пример:**
```java
// Обычный цикл
List filtered = new ArrayList<>();
for (String s : list) {
if (s.startsWith("A")) filtered.add(s.toUpperCase());
}
// Stream API
List filtered = list.stream()
.filter(s -> s.startsWith("A"))
.map(String::toUpperCase)
.collect(Collectors.toList());
```
**Когда что использовать:**
- Циклы — при простых операциях или необходимости точного контроля.
- Stream — для сложных преобразований или работы с большими данными.

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