休假后回来:)提出问题。我正在从阅读《可比接口(interface)文档》
ComparableDocumentation。我确实知道,我们使用可比值,因为它将为我们提供排序和自然排序。在文档中,它写为。



可比与平等如何相关。可比较具有compareTo方法,为什么它需要与equals方法一致?我无法理解这个概念。

也引用来源,有人也可以详细说明这一点



谢谢。

最佳答案

compareTo返回0的语义是,这两个对象相等。如引用中所述,在另一种方法中对相同关系进行另一个定义显然会导致多种麻烦:SortedSet实现中的典型算法依赖于compareTo,但是Set接口(interface)的常规协定规定必须不包含两个对象equalscompareToequals的报告不一致会导致这种情况。

关于java - 为什么可比自然排序需要与equals方法一致?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/18302279/

10-10 06:06