public class MyComp implements Comparator{
public int compare(Object o1,Object o2) {
Diff skipObj1=(Diff)o1;
Diff skipObj2=(Diff)o2;  
if((skipObj1.count).compareTo(skipObj2.count)>0)//从小到大排序
return 1;
else
return 0;
}
}
上面可以按skipObj1对象的count属性进行排序,假使我想按skipObj1对象的其他属性进行排序怎么写呢?
最好达到这样的效果,比如我传个a进去,则按count排序,传b则按age,传c则按area,如此种种……谢谢指教!

解决方案 »

  1.   

    我的思路是在你的类里面,增加一个变量 int  comp,即比较的属性
    增加setComp(int num),指定比较的属性,comp = num;在重写的compare()里getComp(),可以得到要比较的属性,再用一个switch,其他同这样每次排序前,如调用setComp(1),就可以指定特定属性来排了
      

  2.   

    2 楼的方法应该就是最好的了,compare 方法的参数不能变。