当需要排序的集合或数组不是单纯的数字型时,通常可以使用Comparator或Comparable,以简单的方式实现对象排序或自定义排序。
Comparable例子:
class Student implements Comparable {
public int age;
public int compareTo(Object o) {
return this.age - ((Student)o).age;
}
}
Student[] stus = new Student[]{
new Student(10),
new Student(15),
new Student(20),
};
Arrays.sort(stus);Arrays是一个数组工具类,会根据Comparable接口中的compareTo方法来进行排序Student对象。
Comparator例子:
class Student{
public int age;
}
public class StudentComparator implements Comparator {
public int compare(Object o1, Object o2) {
return ((Student) o1).age - ((Student) o2).age;
}
}
StudentComparator comparator = new Comparator();
Arrays.sort(stus, comparator);
选择使用Comparator:可以使用多种排序标准,比如升序、降序等。
本文介绍如何使用Comparable和Comparator接口对Java中的对象数组进行排序。通过具体的Student类实例展示了两种不同的排序方式,即通过实现Comparable接口的compareTo方法进行排序,以及通过Comparator接口自定义排序规则。
557

被折叠的 条评论
为什么被折叠?



