Встречается на собеседованиях • сегодня
Пользовался ли параллельным Stream
Да, параллельные стримы в Java позволяют обрабатывать данные многопоточным способом. Они создаются через `parallelStream()` или вызовом `parallel()` на существующем стриме.
**Пример:**
```java
List numbers = Arrays.asList(1, 2, 3, 4, 5);
int sum = numbers.parallelStream()
.mapToInt(Integer::intValue)
.sum();
System.out.println(sum); // 15 (но обработка в нескольких потоках)
```
**Нюансы:**
- Подходит для больших данных и CPU-интенсивных операций.
- Порядок элементов может нарушаться (если важен, используйте `forEachOrdered`).
- Не всегда ускоряет работу (накладные расходы на разделение/объединение данных).
- Избегайте состояния (shared mutable state) — это может привести к race condition.
**Когда не стоит использовать:**
- Маленькие коллекции.
- Операции с побочными эффектами.
- Зависимые между собой вычисления.

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