我正在编写用于在MongoDb中收集之间进行数据归一化的验证功能我有一个对象:如下:
Class ReleaseTime{
private Date startDate;
private Date endDate;
private List<String> regions;
}
我必须收集所有具有相同startDate和相同endDate的ReleaseTime对象,然后将Regions列表合并在一起
我已经尝试过下面的代码,但只是按startDate分组
expectedAvailabilities = new ArrayList<Track_BasedAvailability>(ungrouppedAvailabilites.stream()
.collect(Collectors.toMap(Track_BasedAvailability::getStartDate,
Function.identity(),
(Track_BasedAvailability tb1, Track_BasedAvailability tb2) ->
{
tb1.getRegions().addAll(tb2.getRegions());
tb2.getRegions().clear();
return tb1;
})
).values());
感谢您的帮助!
您可以将分组用作: