Sobes.tech
Назад к вопросам
Junior — Middle
84

Можешь описать основные виды операций, которые доступны в Stream API в Java?

Компании, где спрашивали
СБЕР Бизнес
Prooftech
СБЕРСБЕР
Норд Клан
Акселератор возможностей
ООО Ренью
ТОП КЕЙС
БАРС группБАРС групп
IT OneIT One
EAGAR
Т-БанкТ-Банк
Effective Mobile

Ответ от нейросети

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]