900字范文,内容丰富有趣,生活中的好帮手!
900字范文 > 有一个List集合 里面存储了5个Student对象。Student有姓名 年龄和成绩属性 按照多

有一个List集合 里面存储了5个Student对象。Student有姓名 年龄和成绩属性 按照多

时间:2022-01-20 13:29:22

相关推荐

有一个List集合 里面存储了5个Student对象。Student有姓名 年龄和成绩属性 按照多

有一个List集合,里面存储了5个Student对象。Student有姓名、年龄和成绩属性,按照要求进行排序(一行代码解决list对象集合排序问题)。

要求对List集合进行排序,排序规则是:

1、先按照成绩 降序 排列;

2、如果成绩相同,那么姓名 升序 排列;

3、如果姓名也相同,那么 年龄 降序排列。

package Java练习题;import java.util.Arrays;import parator;import java.util.List;public class studentSort {public static void main(String[] args) {Student[] stu = {new Student("张三", 20, 88),new Student("李四", 22, 74),new Student("王五", 19, 83),new Student("赵六", 16, 96),new Student("马七", 25, 65)};//第一步:打印初始对象结合System.out.println("开始顺序为:");List<Student> list = Arrays.asList(stu);list.forEach((student) -> {System.out.println("姓名:" + student.getName() + "年龄:" + student.getAge() + " 分数:" + student.getScore());});//第二步:排序paring(Students::getScore)默认是升序,添加reversed()可以实现降序//reversed()倒序排序方法list.sort(paring(Student::getScore).reversed().thenComparing(paring(Student::getName)).thenComparing(paring(Student::getAge).reversed()));//第三步:打印排序好的集合System.out.println("按照年龄排序后:");list.forEach((student) -> {System.out.println("姓名:" + student.getName() + "年龄:" + student.getAge() + " 分数:" + student.getScore());});}}//定义学生类class Student {private String name;private int age;private double score;public Student(String name, int age, double score) {super();this.name = name;this.age = age;this.score = score;}public String getName() {return name;}public void setName(String name) {this.name = name;}public int getAge() {return age;}public void setAge(int age) {this.age = age;}public double getScore() {return score;}public void setScore(double score) {this.score = score;}}

有一个List集合 里面存储了5个Student对象。Student有姓名 年龄和成绩属性 按照多个属性进行排序(一行代码解决list对象集合排序问题)。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。