我没有明确实现Comparable
接口,因为我无法使用比较运算符<
,<=
,>=
和{{ 1}}对于我的自定义类,我可以使用运算符覆盖C ++等语言;我仍然需要直接调用>
方法。
我可以编写自己的布尔方法,例如compareTo
或isEqual
,这与bigger
方法一样有用,如果不是这样的话。
我错过了什么吗?实施它有什么意义?
答案 0 :(得分:6)
Comparable
接口为实现的排序算法提供了一种通信方式,使用自定义方法进行比较是不可能的。
答案 1 :(得分:4)
实施Comparable
的重点是能够根据不同的标准对数组,集合等进行排序。
答案 2 :(得分:3)
其他类可以采用Comparable类型的参数。他们不会知道您的特殊方法,但他们知道界面,并且可以在实施时使用它。
例如,方法Collections.sort()可以使用Comparable:http://docs.oracle.com/javase/7/docs/api/java/util/Collections.html#sort(java.util.List,%20java.util.Comparator)