1.使用自己的集合.sort进行排序里面定义参数后,get后去到自己的字段进行排序
listByCondition.sort(Comparator.comparing(o -> String.valueOf(o.get("retire_date"))));
2.使用自己的集合.sort后把自己的集合放进去后使用比较器进行排序,如果值有null的话使用下面的判断,如果没有的话直接获取到参数后,return比较就行。
Collections.sort(listByCondition, new Comparator<Map<String, Object>>() {
@Override
public int compare(Map<String, Object> o1, Map<String, Object> o2) {
String resignDate1 = (String) o1.get("resign_date");
String resignDate2 = (String) o2.get("resign_date");
if(resignDate1==null && resignDate2==null){ return 0;}
else if(resignDate1==null){return 1;}
else if(resignDate2==null){return -1;}
return resignDate2.compareTo(resignDate1);
}
});
List<Map<String, Object>> myList = new ArrayList<>();
Collections.sort(myList, new Comparator<Map<String, Object>>() {
public int compare(Map<String, Object> o1, Map<String, Object> o2) {
Integer value1= Double.valueOf(o1.get("mapKey").toString()).intValue() ;
Integer value2= Double.valueOf(o2.get("mapKey").toString()).intValue() ;
return value1.compareTo(value2);
}
});