创建一个名为 Student 的类,其中包含学生姓名(name)、年纪(age)和成绩(score)属性。并通过使用Comparator<T>接口实现Student类可以按姓名、年龄、成绩等多种排序
时间: 2024-10-24 15:12:46 浏览: 22
设计一个学生类Student(学生学号、姓名、数学、英语、计算机成绩;)
5星 · 资源好评率100%
创建一个名为`Student`的类,我们可以定义它如下:
```java
import java.util.Comparator;
public class Student {
private String name;
private int age;
private double score;
// 构造函数
public Student(String name, int age, double score) {
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;
}
// 实现Comparator接口,用于排序
@Override
public int compareTo(Student other) {
// 按照姓名排序
int compareName = this.name.compareTo(other.name);
if (compareName != 0) {
return compareName;
}
// 如果名字相同,则按照年龄排序
return Integer.compare(this.age, other.age);
// 最后,如果年龄也相同,则按照成绩排序
// return Double.compare(this.score, other.score);
}
}
阅读全文