让我说我有一个pojo对象
Obj--> {"id":1, "name":"demo"}
我有两个`ArrayList。 这些对象的一个列表,另一个整数列表。现在,什么是最好的编码方式,以便我可以将整数列表与对象列表进行映射。
我需要的是一个以id
作为键的Map,并且所有具有相似ID的对象都作为该地图中的列表。
例如:
Obj1 with id 1
Obj2 with id 1
Obj3 with id 2
Obj4 with id 2
地图将具有
for key --> id:1 Value Obj1 and Obj2
for key --> id:2 Value Obj3 and Obj4
我该如何实现?
答案 0 :(得分:0)
我不了解需要两个数组列表,可以按每个pojo的标识符分组以将它们收集到Map<Integer, List<Pojo>>
中,其中每个标识符可以映射到具有相同标识符的许多pojo。
pojos.stream().collect(Collectors.groupingBy(Pojo::getId))