对象list根据对象的某个字段或多个字段排序的几种方法
1、根据成绩排序
list.sort((x,y)->Float.compare(y.getScore(),x.getScore()));
list.sort((x,y)->Float.compare(x.getScore(),y.getScore()));
2、根据年龄排序
list.sort(Comparator.comparing(Student::getAge).reversed());
list.sort(Comparator.comparing(Student::getAge);
3、根据年级排序
list.stream().sorted(Comparator.comparing(Student::getGrade).reversed()).collect(Collectors.toList());
list.stream().sorted(Comparator.comparing(Student::getGrade)).collect(Collectors.toList());
4、先根据年级升序排序,再根据分数降序排序
list.stream().sorted(Comparator.comparing(Student::getGrade).thenComparing(Comparator.comparing(Student::getScore).reversed())).collect(Collectors.toList());