ArrayList按长度排序

时间:2015-03-02 01:11:18

标签: java

我想按向量的长度对ArrayList个对象进行排序 对象。

double[] s ={1,2,3,4};
double[] s2 ={1,2};
double[] s3 ={1,2,3};

Student[] Facultate ={new Student(s),new Student(s2)};
ArrayList<Student> FacultateList = new ArrayList<Student>(Arrays.asList(Facultate));

我想要FacultateList订购s2,s3,s

1 个答案:

答案 0 :(得分:5)

Collections.sort与自定义比较器一起使用:

Collections.sort(facultateList, new Comparator<Student>() {
    public int compare(Student a, Student b) {
        return a.getLength().compareTo(b.getLength());
    }
});

或者,如果这是对学生进行排序的默认方式,请Student实施Comparable<Student>,在类本身中实施相应的compareTo方法,并使用Collections.sort自定义比较器。

(稍等一下,以后会让你感到困惑,Java中的约定是变量以小写字母开头,所以facultateList,而不是FacultateList。)