我有诸如
学生一12 22 78
学生二21 24 83
学生三10 12 67
在数据文件中,他们大约有35名学生
是他们将数据存储在数组中,然后按最后一个列中的值对数据进行排序的一种方法。
我有这个并且在想我需要使用比较器函数,但是这将允许我排序,因为该数组用于字符串但包含数字
String[][] aryStudents = new String[4][4];
aryStudents[0][1] = "Student1";
aryStudents[0][2] = "12";
aryStudents[0][3] = "22";
aryStudents[0][4] = "73";
aryStudents[1][1] = "Student2";
aryStudents[2][2] = "12";
aryStudents[3][3] = "22";
aryStudents[4][4] = "84";
最佳答案
使用面向对象的方法。
创建一个班级Student
,每个学生都有一个姓名和一个分数列表。然后创建一个Student数组并对其进行排序,以提供一个自定义比较器。您可以使用二维数组来实现排序,但是会增加一定程度的复杂性。
public class Student {
private String name;
private List<Integer> grades;
//Constructor, getter, setter, equals, hashcode, etc.
}
Java是一种面向对象的编程语言,因此请充分利用它。