根据map的key进行排序
1 升序排序
Map.Entry.comparingByKey()
Map<LocalDateTime, List<ExerciseReport>> twelveReportMap = twelveReportDataList.stream()
.collect(Collectors.groupingBy(ExerciseReport::getCreateDate));
System.out.println("twelveReportMap"+twelveReportMap);
//根据时间进行升序排序
Map<LocalDateTime, List<ExerciseReport>> result = new LinkedHashMap<>();
twelveReportMap.entrySet().stream().sorted(Map.Entry.comparingByKey()).forEachOrdered(x -> result.put(x.getKey(), x.getValue()));
排序前:

排序后:

2 降序排序
Collections.reverseOrder(Map.Entry.comparingByKey())
Map<LocalDateTime, List<ExerciseReport>> twelveReportMap = twelveReportDataList.stream()
.collect(Collectors.groupingBy(ExerciseReport::getCreateDate));
//根据时间进行升序排序
Map<LocalDateTime, List<ExerciseReport>> result = new LinkedHashMap<>();
twelveReportMap.entrySet().stream().sorted(Collections.reverseOrder(Map.Entry.comparingByKey())).forEachOrdered(x -> result.put(x.getKey(), x.getValue()));
排序前:

排序后:

想要快速入手java开发小知识,快来关注公众号:爪哇开发吧!每天会不定时的进行更新。


浙公网安备 33010602011771号