我有一個類中有一個對象的列表。我需要根據列表對象的浮點值對列表進行排序,但在使用Array.sort方法後,下面的代碼不起作用,我打印出集合,但學生列表不會按照GPA排序。如何排序和保留web服務的結果?
學校類
public class School{
private List<Student> students;
public School(){
this.students = new ArrayList();
}
}
Student類
public class Student implements Comparable<Student> {
private int id;
private float GPA;
...
public int compareTo(Student student) {
float compareGPA = student.getGPA();
return (int)(this.getGPA() - compareGPA);
}
}
代碼進行排序這是主要方法
Arrays.sort(this.school.getStudents().toArray());
「不行」不是一個好問題描述。 – qqilihq
@qqilihq謝謝我添加了更多細節 – J888
重新讀取最後一行後,問題是:'#toArray'從列表中創建一個新數組。只有數組是排序的,而不是List本身(這就是你明顯想要的)。請參閱下面的@ donfoxx的答案,瞭解如何解決這個問題。 – qqilihq