Сборщики и группировка
Научитесь собирать результаты Stream и группировать данные.
«Сборщики и группировка» — бесплатный урок Java Academy на CoddyKit. Это урок 3 из 3. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Java Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Java Academy содержит 3 уроков всего.
Введение
Сборщики объединяют результаты потоков в контейнеры. Группировка организует элементы по категориям.
toList
Collectors.toList() собирает элементы потока в список.
Код: toList
Этот код собирает имена в верхнем регистре в список.
import java.util.*;import java.util.stream.*;public class Main {
public static void main(String[] args) {
List<String> names = Arrays.asList("Ada","Bob","Eve");
List<String> upper = names.stream().map(String::toUpperCase).collect(Collectors.toList());
System.out.println(upper);
}
}
joining
Collectors.joining() объединяет строки с необязательным разделителем.
Код: joining
Этот код соединяет слова пробелами, чтобы образовать предложение.
import java.util.*;import java.util.stream.*;public class Main {
public static void main(String[] args) {
List<String> words = Arrays.asList("Java","is","fun");
String sentence = words.stream().collect(Collectors.joining(" "));
System.out.println(sentence);
}
}
Код: groupingBy
Collectors.groupingBy группирует элементы в отображение, ключами которого служит классификатор (здесь — первая буква).
import java.util.*;import java.util.stream.*;public class Main {
public static void main(String[] args) {
List<String> names = Arrays.asList("Alice","Bob","Anna");
Map<Character, List<String>> grouped = names.stream().collect(Collectors.groupingBy(s -> s.charAt(0)));
System.out.println(grouped);
}
}
Проверка сборщиков
Быстрая проверка: какой сборщик группирует элементы с помощью функции-классификатора?
Повторение
Повторение: сборщики позволяют объединять результаты потоков. toList собирает, joining объединяет, groupingBy распределяет по категориям.
Часто задаваемые вопросы
Урок «Сборщики и группировка» бесплатный?
Да — полный текст урока «Сборщики и группировка» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Java Academy, подпишись на CoddyKit PRO. Курс Java Academy содержит 3 уроков всего.
Чему я научусь в уроке «Сборщики и группировка»?
Научитесь собирать результаты Stream и группировать данные. Ты практикуешь Java Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать Java Academy?
Предыдущий опыт не требуется. Java Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 3 из 3.
Сколько времени занимает урок «Сборщики и группировка»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке Java Academy?
Да. Каждый урок Java Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Источники потоков
- map/filter/reduce
- Сборщики и группировка