Что такое Stream API в Java

«Что такое Stream API в Java» — вопрос из категории Java, который задают на 23% собеседований Android Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Stream API — это мощный инструмент в Java для обработки коллекций данных в функциональном стиле. Позволяет выполнять цепочки операций (фильтрация, сортировка, преобразование) над данными без изменения исходной коллекции.

Особенности:

  • Ленивые вычисления (операции выполняются только при терминальной операции)
  • Не изменяет исходные данные
  • Поддерживает параллельную обработку

Пример:

List<String> names = Arrays.asList("Anna", "Bob", "Alice");
long count = names.stream()
    .filter(name -> name.startsWith("A"))
    .count(); // Результат: 2

Терминальные операции: collect(), forEach(), reduce()
Промежуточные: map(), filter(), sorted()