使用收藏家列表转换地图对象 - Java的

user3819295:

如何使用收集器,以转化的DAO的列表,到 Map<String, List<Pojo>>

daoList看起来是这样的:

[0] : id = "34234", team = "gools", name = "bob", type = "old"
[1] : id = "23423", team = "fool" , name = "sam", type = "new"
[2] : id = "34342", team = "gools" , name = "dan", type = "new"

我想GROUPBY“团队”属性,并为每个团队名单,具体如下:

"gools":
       ["id": 34234, "name": "bob", "type": "old"],
       ["id": 34342, "name": "dan", "type": "new"]

"fool":
       ["id": 23423, "name": "sam", "type": "new"]

POJO看起来是这样的:

@Data
@NoArgsConstructor
@AllArgsConstructor(access = AccessLevel.PUBLIC)
public class Pojo{

    private String id;
    private String name;
    private String type;
}

这是我正在努力做到这一点,显然是错误的方法:

public Team groupedByTeams(List<? extends GenericDAO> daoList)
    {

        Map<String, List<Pojo>> teamMap= daoList.stream()
            .collect(Collectors.groupingBy(GenericDAO::getTeam))
    }
他们是:

您当前的集电极- .collect(Collectors.groupingBy(GenericDAO::getTeam))-正在生成Map<String,List<? extends GenericDAO>>

为了产生一个Map<String, List<Pojo>>,你有你的转换GenericDAO的实例为Pojo通过链接一个实例Collectors.mapping()收集到Collectors.groupingBy()集电极:

Map<String, List<Pojo>> teamMap = 
    daoList.stream()
           .collect(Collectors.groupingBy(GenericDAO::getTeam,
                                          Collectors.mapping (dao -> new Pojo(...),
                                                              Collectors.toList())));

这是假设你有一些Pojo接收一个构造函数GenericDAO实例或相关GenericDAO性。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章