{
@Override
public int compare(IdNumber2 o1, IdNumber2 o2) {
// TODO Auto-generated method stub
return o2.getIdNumber()-o1.getIdNumber();//从小到大排序
}
}
//z作为键的类实现Comparable接口
class IdNumber2 implements Comparable{
//成员属性
private int IdNumber;
public int getIdNumber()
{
return IdNumber;
}
//构造函数
public IdNumber2() {
// TODO Auto-generated constructor stub
}
//构造函数
public IdNumber2(int IdNumber)
{
this.IdNumber=IdNumber;
}
//重写toString()方法
@Override
public String toString() {
// TODO Auto-generated method stub
return "["+this.IdNumber+"]";
}
//重写equals()方法
@Override
public boolean equals(Object obj)
{
if(obj==this)//自己和自己比较
return true;//那就是同一个相等了
//传入的引用不为空,而且两个的类型一样
if(obj!=null&&obj.getClass()==this.getClass())
{
IdNumber2 idNumber2=(IdNumber2) obj;//类型转换
return this.IdNumber==idNumber2.IdNumber;
//如果两个的编号一样,那就认为相等
}
return false;
}
//重写hashCode()方法
@Override
public int hashCode() {
// TODO Auto-generated method stub
return this.IdNumber*100;
}
//重写compareTo()方法实现自然排序
@Override
public int compareTo(IdNumber2 o)
{
// TODO Auto-generated method stub
//return this.IdNumber-o.IdNumber;//从小到大排序:
return o.IdNumber-this.IdNumber;//从大到小排序
}
}
本文介绍了一个名为IdNumber2的类,该类实现了Comparable接口并重写了compareTo方法以实现对象之间的自然排序。此外,还提供了一个用于比较IdNumber2实例的compare方法,实现了自定义的排序逻辑。
2292

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



