Встречается на собеседованиях • сегодня
Какие знаешь методы для работы с потоками
В Java 8+ основные методы для работы с потоками (Stream API):
1. **Промежуточные (lazy)**:
- `filter(Predicate)` - фильтрация
- `map(Function)` - преобразование
- `flatMap(Function)` - "разворачивание" вложенных структур
- `distinct()` - удаление дубликатов
- `sorted()` - сортировка
- `peek(Consumer)` - выполнение действия без изменения потока
2. **Терминальные (eager)**:
- `forEach(Consumer)` - выполнение действия для каждого элемента
- `collect(Collector)` - сбор в коллекцию
- `reduce()` - агрегация элементов
- `count()` - подсчет элементов
- `findFirst()`, `findAny()` - поиск элементов
Пример:
```java
List names = Arrays.asList("John", "Alice", "Bob");
List result = names.stream()
.filter(name -> name.length() > 3)
.map(String::toUpperCase)
.collect(Collectors.toList());
// [JOHN, ALICE]
```

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