单个字段排序
voList.sort((x, y) -> Double.compare(x.getAge(), y.getAge()));
多个字段排序
voList.stream().sorted(Comparator.comparing(DayVo::getAge).reversed()
.thenComparing(DayVo::getCount, Comparator.reverseOrder()))
.collect(Collectors.toList());
list集合根据时间字段排序
public static List listSort2(List<DayVo> initList) {
List<DayVo> list = initList;
Collections.sort(list, new Comparator<DayVo>() {
@Override
public int compare(DayVo vo1, DayVo vo2) {
String day1 = vo1.getDay();
String day2 = vo2.getDay();
DateTimeFormatter format = DateTimeFormatter.ofPattern("yyyy-MM-dd");
LocalDate date1 = LocalDate.parse(day1,format);
LocalDate date2 = LocalDate.parse(day2,format);
return date1.compareTo(date2);
}
});
Collections.reverse(list);
return list;
}