比较器接口的compare()方法的结果与equals()方法不一致

时间:2018-04-12 01:28:26

标签: java collections equals comparator comparable

假设我有类A,它覆盖默认的equals方法并实现Comparable接口(Comparable接口被认为是自然排序)。为了符合良好实践,equalsComparable's compareTo方法返回的结果应该是一致的。

在某些情况下,我想以不同的方式比较类A的实例,因此我实现Comparator接口(Comparator接口被认为是不自然的排序)。因此,使用Comparable's compareTo方法和Comparator's compare方法,结果将不一致。

如果equals方法和Comparable's compareTo界面一致,Comparable's comparaTo方法和Comparator's compare方法不一致,则equals方法和Comparator's compare方法也不一致。

那么equals方法与Comparator's compare方法不一致的后果是什么?如果有的话?

0 个答案:

没有答案