为了账号安全,请及时绑定邮箱和手机立即绑定

地图和 Groupby 一口气

地图和 Groupby 一口气

偶然的你 2022-01-19 09:29:33
我有一个模型类如下:public class CCP implements Serializable{    private static final long serialVersionUID = 1L;    @Id    @Column(name = "p_id")    private Integer pId;    @Id    @Column(name = "c_id")    private Integer cId;    @Column(name = "priority")    private Integer priority;}我有以下要求:转换List<CCP>成Map<pid, List<cid>>也就是说,我想将 CCP 对象列表转换为以 pid 为键、以关联 cid 列表为值的映射。我尝试了以下事情:Map<Integer, List<CCP>> xxx = ccplist.stream()                .collect(Collectors.groupingBy(ccp -> ccp.getPId()));但这仅给出了 CCP 的列表。我如何在此处获取 cid 列表而不是 CCP?
查看完整描述

2 回答

?
梵蒂冈之花

TA贡献1900条经验 获得超5个赞

使用mapping

Map<Integer, List<Integer>> xxx = 
    ccplist.stream()
           .collect(Collectors.groupingBy(CCP::getPId,
                                          Collectors.mapping(CCP::getCId,
                                                             Collectors.toList())));


查看完整回答
反对 回复 2022-01-19
?
月关宝盒

TA贡献1772条经验 获得超5个赞

ccplist.stream()
         .collect(Collectors.groupingBy(
               CCP::getPId,
               Collectors.mapping(CCP::getCId, Collectors.toList())));


查看完整回答
反对 回复 2022-01-19
  • 2 回答
  • 0 关注
  • 147 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信