原因:项目中遇到去数据库查数据,有额日期是有数据的,有的日期没有数据,所以这需要后端补全日期
直接上代码:
List<Map<String,Object>> result = new ArrayList<>();
Map<String,Object> map;
map = new HashMap<>();
map.put("date",2020112700);
map.put("num",1123);
result.add(map);
map = new HashMap<>();
map.put("date",2020112724);
map.put("num",1123);
result.add(map);
map = new HashMap<>();
map.put("date",2020112708);
map.put("num",1123);
result.add(map);
map = new HashMap<>();
map.put("date",2020112703);
map.put("num",1123);
result.add(map);
List<Map<String,Object>> list = result.stream().sorted(Comparator.comparingInt(e -> (Integer) (e.get("date")))).collect(Collectors.toList());
System.out.println(list);
这样就可以正序排序了
如果不想这样做,也可以使用数据库生成时间范围的日期,然后left join 所查数据,也是可以的