根据 List 里 Map 的一个字段进行排序
类型是:List<Map<String, Object>>
按照 List 里 Map 的一个字段进行排序:
oneList.sort(new Comparator<Map<String, Object>>() {
@Override
public int compare(Map<String, Object> o1, Map<String, Object> o2) {
String day1 = (String) o1.get("day"); // day1 是从 list 中拿出的第一个 day 的值
String day2 = (String) o2.get("day"); // day2 是从 list 中拿出的第二个 day 的值
return day1.compareTo(day2);
}
});
IDEA 对 new Comparator<Map<String, Object>>()
这段代码进行提示:
Anonymous new Comparator<Map<String, Object>>() can be replaced with lambda
译:匿名 new Comparator<Map<String, Object>>() 可以被 lambda 替换
自动更改后:
oneList.sort((o1, o2) -> {
String day1 = (String) o1.get("day"); // day1 是从 list 中拿出的第一个 day 的值
String day2 = (String) o2.get("day"); // day2 是从 list 中拿出的第二个 day 的值
return day1.compareTo(day2);
});
倒序:如果想要倒序,更换最后一句 return 的 day1 和 day2 的位置即可。
( 2021.07.01 )