工作上的场景,简单记录一下:
在这里直接借用业务上的list,不再new 了。
List<AlarmStatisticsListOutput> alarmList = spareAlarmStatisticsMapper.selectAlarmStatistics(unitIdList);
根据对象中的某个字段分组,得到重复数据,在这里用了对象中的一个字段spareId
Map<String, List<AlarmStatisticsListOutput>> groupMap = alarmList.stream().collect(Collectors.groupingBy(AlarmStatisticsListOutput::getSpareId));
在这里可以循环map,获取value中的list的size()>1的数据。
for (Map.Entry<String, List<AlarmSpareOutput>> map : groupMap.entrySet()) {
if (map.getValue().size() > 1) {
//处理业务
}
}
获取重复数据的个数
List<String> count = groupMap.keySet().stream().filter(key -> groupMap.get(key).size() > 1).distinct().collect(Collectors.toList());
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)