Встречается на 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(); // терминальная
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы