以对集合List<Map<String, Object>>进行排序为例
List<Map<String, Object>> list = new ArrayList<>();
Map<String, Object> map = new HashMap<>();
map.put("report_date","2019-04-30");
map.put("reg_user",52);
list.add(map);
Map<String, Object> map2 = new HashMap<>();
map2.put("report_date","2019-04-28");
map2.put("reg_user",147);
list.add(map2);
Map<String, Object> map3 = new HashMap<>();
map3.put("report_date","2019-04-29");
map3.put("reg_user",86);
list.add(map3);
//list输出如下:
//[{reg_user=52, report_date=2019-04-30}, {reg_user=147, report_date=2019-04-28}, {reg_user=86, report_date=2019-04-29}]
//按日期进行倒序
Collections.sort(list,new Comparator<Map<String, Object>>(){
@Override
public int compare(Map<String, Object> o1, Map<String, Object> o2) {
/**
* 升序排的话就是第一个参数.compareTo(第二个参数);
* 降序排的话就是第二个参数.compareTo(第一个参数);
*/
return o2.get("report_date").toString().compareTo(o1.get("report_date").toString());
}
});
//list排序后输出如下:
//[{reg_user=52, report_date=2019-04-30}, {reg_user=86, report_date=2019-04-29}, {reg_user=147, report_date=2019-04-28}]
可见list已经按日期倒序输出了,其他类型的list同理可进行排序。