如何创建一个从其他地图获取值然后将它们映射到其字段的地图?

所以我有一个 ids 到 systemUsers 的映射,现在我想创建一个 systemUser 键和登录值的映射。登录是 systemUser 类中的一个字段。我对如何编写映射器函数有疑问,即使这是正确的方法

Map<Long, PHSystemUser> systemUserMap = getPersistenceLogic()
                      .getSystemUsersMap(serviceClientMap.values());

Map<PHSystemUser, String> loginMap = systemUserMap.values().stream()
                      .map(PHSystemUser::getLogin)
                      .collect(Collectors.toMap(, ));


猛跑小猪
浏览 93回答 1
1回答

波斯汪

您只需要使用两个函数直接收集:systemUserMap.values().stream() &nbsp;&nbsp;&nbsp;.collect(Collectors.toMap(Function.identity(),&nbsp;PHSystemUser::getLogin));的问题.map(PHSystemUser::getLogin)是它将流更改为Stream<String>,让您没有机会在下游获得整个PHSystemUser对象。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java