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

Можешь ли ты назвать основные промежуточные операции, используемые для обработки данных или в потоках?

Компании, где спрашивали
СБЕРСБЕР

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

sobes.tech AI

В Java для обработки данных в потоках (Streams) используются промежуточные операции, которые возвращают новый поток и позволяют строить цепочки преобразований.

Основные промежуточные операции:

  • map — преобразует каждый элемент потока, применяя функцию.
  • filter — фильтрует элементы по условию.
  • flatMap — преобразует каждый элемент в поток и объединяет их в один поток.
  • distinct — удаляет дубликаты.
  • sorted — сортирует элементы.
  • limit — ограничивает количество элементов.
  • skip — пропускает заданное количество элементов.

Пример:

List<String> names = Arrays.asList("Anna", "Bob", "Alice", "Brian");

List<String> filtered = names.stream()
    .filter(name -> name.startsWith("A"))
    .map(String::toUpperCase)
    .sorted()
    .collect(Collectors.toList());

System.out.println(filtered); // [ALICE, ANNA]

Здесь мы отфильтровали имена, начинающиеся с "A", преобразовали их в верхний регистр и отсортировали.