gpt4 book ai didi

java 8,List 映射部门和地址列表

转载 作者:行者123 更新时间:2023-11-30 08:01:06 24 4
gpt4 key购买 nike

我有一个类 类用户{ 弦乐部; 字符串地址; } 我有用户列表,我可以使用 java 8 stream/map/collect 获得以下输出吗

List<User> userList=getUserList();

Map<String,List<String>> userAddressMap=new HashMap<String,List<String>>();

for(User user : userList){

List<String> addressList=userAddressMap.get(user.getDepartment());

if(addressList==null){
userAddressMap.put(user.getDepartment(),addressList);
}

addressList.add(user.getAddress);
}

最佳答案

groupingBy 收集器与下游的 mapping 收集器一起使用。

import static java.util.stream.Collectors.*;

Map<String, List<String>> userAddressMap = userList.stream()
.collect(groupingBy(
User::getDepartment,
mapping(User::getAddress, toList())
));

关于java 8,List<Employee> 映射部门和地址列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37979777/

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