jdk.18
1.根据list中对象的某一个属性排序
public static void main(String[] args) {
List<User> list = new ArrayList<>();
//排序,根据list中的一个字段排序【升序】
list.sort(Comparator.comparing(User::getId));
//【降序】
list.sort(Comparator.comparing(User::getId).reversed());
}
2.根据list中对象的某两个属性排序
public static void main(String[] args) {
List<User> list = new ArrayList<>();
//排序,根据list中的两个字段排序
//bya为第一个排序字段,升序 这个id相同时走第二个排序
Comparator<User> bya = Comparator.comparing(User::getId);
//bya为第二个排序字段,降序.reversed()
Comparator<User> byb = Comparator.comparing(User::getAge).reversed();
Collections.sort(list,bya.thenComparing(byb));
}