List<Entity> entities = ...
Map<Boolean, List<Entity>> entitiesByIsTest = entities.stream()
.collect(Collectors.groupingBy(Entity::isTest));
Очевидно, что карта результата имеет единственные ключи, которые присутствуют в свойстве группировки. Он должен работать так же, как для типов с инфинитивным набором значений. Но как насчет перечислений/булевых/других определенных типов?StreamAPI Collectors.groupingBy пустая коллекция вместо нуля
Возможно ли реализовать инициализацию пустых коллекций более элегантно, чем в фрагменте ниже?
if (entitiesByIsTest.get(true) == null) {
entitiesByIsTest.put(true, new ArrayList());
}
трудно понять вопрос. Какова цель вашего кода? –
Цель состоит в том, чтобы делить набор на два независимых набора, а затем выполнить несколько разных действий - например, сохранить обычные объекты, но сохранить только количество объектов тестирования –