以前,一直使用compareTo的从小到大排序,实际上compareTo可以选择从小到大还是从大到小:
设接口I,T是实现了接口I的类,则类T实现Comparable的话,如下
//从小到大排序:当前比外来户小返回负值,当前比外来户大返回正值
//从大到小排序:当前比外来户小返回正值,当前比外来户大返回负值
设接口I,T是实现了接口I的类,则类T实现Comparable的话,如下
//从小到大排序:当前比外来户小返回负值,当前比外来户大返回正值
public int compartTo(I i)
{
T t=(T)i;
if(age<t.getAge())
return -1;
else if(age>t.getAge())
return 1;
else return 0;
}
//从大到小排序:当前比外来户小返回正值,当前比外来户大返回负值
public int compartTo(I i)
{
T t=(T)i;
if(age<t.getAge())
return 1;
else if(age>t.getAge())
return -1;
else return 0;
}