Список преобразования Java Stream в карту набора целых чисел - PullRequest
0 голосов
/ 13 мая 2019

У меня есть List<StructureA>.

Теперь эта структура состоит из Type: typeA & typeB .Тип здесь Enum.

Структура A состоит из полей: countryCode, Type, timeZone.Структура B состоит из полей: countryCode, timeZone

Я хочу преобразовать этот список в Map<Type, Set<StructureB>>.Возможно ли это с помощью потоков?

1 Ответ

2 голосов
/ 13 мая 2019

использовать группировку по коллектору

Map<Type, Set<StructureB>> collect = list.stream()
            .collect(Collectors.groupingBy(StructureA::getType,
                Collectors.mapping(a -> new StructureB(a), Collectors.toSet())));
...