数组排序
数组排序最简单了,直接Arrays.sort(a); a是待排序的数组
根据对象中的成员变量来排序
这个要用到comparator接口
需要另外创建一个类来实现这个接口,并且重接里面的compare方法。
在这里根据是Application这个方法中的average这个成员变量来排序。
class Acomparator implements Comparator<Application> {
@Override
public int compare(Application o1, Application o2) {
// 这里是从大到小的排序规则。如果o1小于o2,返回一个正数;如果o1大于o2,返回一个负数;如果他们相等,则返回0
if (o1.average > o2.average) {
return -1;
} else if (o1.average < o2.average) {
return 1;
} else {
return 0;
}
}
}
然后在用的时候,这么用。先创建一个比较器的对象。然后调用Collections里的sort().
第一个参数是待排序的对象的list.如下定义。List本身是一个接口,所以要指明类型。ArrayList是它一个实现类。创建的时候创建的还是实现类。
List<Application> appList = new ArrayList<Application>();
Acomparator comparator = new Acomparator();
Collections.sort(appList, comparator);
那么appList里的对象就有序了。