【发布时间】:2016-11-05 11:58:18
【问题描述】:
在这个例子中我有一个实现Comparable的Employee类,下面是compareTo()的代码
@Override
public int compareTo(Employee e) {
if (getName().equals(e.getName())) return 0;
else if (getPay() < e.getPay()) return -1;
else return 1;
}
当我执行employee1.equals(employee2); 时,鉴于employee1 和2 具有相同的名称,我希望结果为true 但它返回false。
但是当我执行employee1.compareTo(employee2); 时,我得到了预期的结果,即0。
请帮助我了解Comparable 的性质。谢谢!
【问题讨论】:
-
你的
equals是什么样的? -
如何在不显示 equals 方法的情况下提出这个问题?
标签: java comparable