Встречается на 2% собеседований по Java

Какие знаешь виды операций в Stream

В Stream API есть два типа операций: промежуточные (intermediate) и терминальные (terminal).

Промежуточные (ленивые) – преобразуют элементы потока, но не запускают его обработку. Примеры:

  • filter(Predicate<T>) – фильтрация по условию
  • map(Function<T, R>) – преобразование элементов
  • sorted() / sorted(Comparator<T>) – сортировка
  • distinct() – удаление дубликатов

Терминальные (энергичные) – завершают поток и запускают его обработку. Примеры:

  • forEach(Consumer<T>) – выполнение действия для каждого элемента
  • collect(Collector<T, A, R>) – сбор в коллекцию/объект
  • reduce() – агрегация элементов
  • count() / min() / max() – подсчёт элементов

Пример:

java
List<String> names = Arrays.asList("Anna", "Bob", "Alice");
long count = names.stream()
    .filter(name -> name.startsWith("A")) // промежуточная
    .count(); // терминальная
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы