Back to questions
СБЕР
БАРС групп
IT One
Т-Банк
Junior — Middle
83
Можешь описать основные виды операций, которые доступны в Stream API в Java?
Companies where asked
СБЕР Бизнес
Prooftech
Норд Клан
Акселератор возможностей
ООО Ренью
ТОП КЕЙС
EAGAR
Effective Mobile
Answer from AI
sobes.tech AI
В Java Stream API операции делятся на две основные категории: промежуточные (intermediate) и терминальные (terminal).
-
Промежуточные операции возвращают новый Stream и позволяют строить цепочку обработки данных. Они ленивы, то есть не выполняются до тех пор, пока не вызовется терминальная операция. Примеры:
filter(),map(),sorted(),distinct(),limit(),skip(). -
Терминальные операции завершают цепочку и возвращают результат или побочный эффект. После их вызова Stream становится недоступным. Примеры:
collect(),forEach(),reduce(),count(),anyMatch(),allMatch(),findFirst().
Пример использования:
List<String> names = Arrays.asList("Anna", "Bob", "Charlie", "David");
List<String> filteredNames = names.stream()
.filter(name -> name.startsWith("A")) // промежуточная операция
.map(String::toUpperCase) // промежуточная операция
.collect(Collectors.toList()); // терминальная операция
System.out.println(filteredNames); // [ANNA]