lamda表达式和增强版Comparator进行排序学习记录
下面展示一些 内联代码片
。
List<Student> list = new ArrayList<>();
list.add(new Student(1, 25, "关羽"));
list.add(new Student(2, 21, "张飞"));
list.add(new Student(3, 18, "刘备"));
list.add(new Student(4, 32, "袁绍"));
list.add(new Student(5, 36, "赵云"));
list.add(new Student(6, 16, "曹操"));
//默认是升序
list.sort(Comparator.comparing(Student::getAge));
for (Student student : list) {
System.out.println(student.toString());
}
// 条件降序
list.sort(Comparator.comparing(Student::getAge).reversed());
for (Student student : list) {
System.out.println(student.toString());
}
//多条件升序排列 唯一条件限制了 多条件 貌似没撒用
list.sort(Comparator.comparing(Student::getId).thenComparing(Student::getName));
for (Student student : list) {
System.out.println(student.toString());
}
参考连接:https://blog.csdn.net/gao1440156051/article/details/71126194