gpt4 book ai didi

Java 8 lambda Collectors.groupingBy 与 Collector.toList() 中的 map

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:50:15 35 4
gpt4 key购买 nike

我已经实现了以下示例:

Map<String, List<Event>> map = events.getItems().stream()
.collect(Collectors.groupingBy(Event::getStatus, Collectors.toList()));

如何获得 Map<String, List<EventDto>> map 的输出相反?

EventDto可以通过执行一个转换 Event 的外部方法来获得到EventDto .例如 - this::convertFromEventToEventDto .

最佳答案

您需要一个mapping Collector 来将Event 元素映射到EventDto 元素:

Map<String, List<EventDto>> map = 
events.getItems()
.stream()
.collect(Collectors.groupingBy(Event::getStatus,
Collectors.mapping(this::convertFromEventToEventDto,
Collectors.toList())));

关于Java 8 lambda Collectors.groupingBy 与 Collector.toList() 中的 map ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42898879/

35 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com