gpt4 book ai didi

java - 如何通过减少下游进行分组收集?

转载 作者:塔克拉玛干 更新时间:2023-11-01 22:39:06 26 4
gpt4 key购买 nike

我对 groupingBy 有疑问收集。在我的例子中,列表中的所有元素都有唯一的 addressType值(value)。我想要一个Map<String, Address>但是有Map<String, Optional<Address>>

List<Address> list = ....
Map<String, Optional<Address>> collect = list.stream()
.collect(Collectors.groupingBy(Address::getAddressType,
Collectors.reducing((o, o2) -> o)));

最佳答案

因为 列表中的所有元素都有唯一的 addressType 值,所以在这种情况下没有理由使用 Collectors.groupingBy。使用 Collectors.toMap 代替:

Map<String, Address> collect = 
list.stream()
.collect(Collectors.toMap(Address::getAddressType,
Function.identity()));

关于java - 如何通过减少下游进行分组收集?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47196322/

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