用java把三个成绩的总成绩排序_用java编一个学生成绩排序成绩 有学生的姓名 学号 三门课的成绩 然后对总分排序。要求有小学生中学生大学生,不同学生科目会不同,可以使用链表
时间: 2024-04-23 14:23:04 浏览: 97
接收从键盘输入某班学生的学号、姓名、成绩,对学 生的成绩进行排序.zip
5星 · 资源好评率100%
好的,我可以帮你解决这个问题。下面是一个简单的 Java 代码示例,可以根据学生的总成绩来对学生进行排序。其中,使用了链表来存储学生信息。
```java
import java.util.Collections;
import java.util.Comparator;
import java.util.LinkedList;
public class Student {
private String name;
private int id;
private int grade1;
private int grade2;
private int grade3;
public Student(String n, int i, int g1, int g2, int g3) {
name = n;
id = i;
grade1 = g1;
grade2 = g2;
grade3 = g3;
}
public int getTotalScore() {
return grade1 + grade2 + grade3;
}
public static void main(String[] args) {
LinkedList<Student> students = new LinkedList<Student>();
students.add(new Student("Tom", 1, 80, 90, 70));
students.add(new Student("Jerry", 2, 70, 80, 90));
students.add(new Student("Alice", 3, 90, 70, 80));
// 对学生按照总分进行排序
Collections.sort(students, new Comparator<Student>() {
public int compare(Student s1, Student s2) {
return s2.getTotalScore() - s1.getTotalScore();
}
});
// 输出排序后的学生信息
for (Student s : students) {
System.out.println(s.name + " " + s.id + " " + s.grade1 + " " + s.grade2 + " " + s.grade3);
}
}
}
```
这里我们定义了一个 `Student` 类,每个学生对象包含姓名、学号、三门课程的成绩。我们通过 `getTotalScore()` 方法来计算每个学生的总分。然后,我们使用 `Collections.sort()` 方法来对学生链表进行排序,排序规则是按照学生的总分从高到低排序。最后,我们输出排好序的学生信息。
注意,这只是一个简单的示例程序,实际应用中可能需要更完善的数据结构和算法来实现更复杂的排序需求。
阅读全文