A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 欧阳博 中级黑马   /  2012-3-16 19:09  /  1639 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

User[] user = new User[3];
user[0] = new User("tamik ",2000);
user[1] = new User( "Yu   dan ",2800);
user[2] = new User( "John   Rose ",2600);

我想对这三个对象的工资进行由高到低的排序,需要怎么实现呢?  我对于这个compareTo方法的参数以及返回实在不是很懂。

3 个回复

倒序浏览
定义一个类实现Comparable接口,重写compareTo方法就可以了
回复 使用道具 举报
直接调用肯定是不行的,虚拟机不知道按照什么规则排序,你得使compareTo 指定按照那个参数排,所以你只有重写该方法了!
回复 使用道具 举报
Class MyCom emplements comparable{
     public int compareTo(Object obj){
           int num=new Integer(this.pay).compareTo(new Integer(obj.pay));
           if(num==0)
                 return    this.name,compareTo(obj.name);
           return num;
}
}
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马