当你的类实现
Comparable时,该类的
compareTo方法将定义该对象的“自然”顺序。根据合同,该方法有义务(尽管不要求)与该对象上的其他方法保持一致,例如,当
.equals()比较返回true 时,应始终为对象返回0 。
一个比较本身就是如何比较两个对象的定义,可用于可能不与自然顺序排列的方式来比较的对象。
例如,字符串通常按字母顺序进行比较。因此,
"a".compareTo("b")将使用字母比较。如果要比较字符串的长度,则需要编写一个自定义比较器。
简而言之,没有太大区别。它们都是相似手段的目的。在一般情况下,可实现与自然顺序可比的实现(自然顺序定义显然可以接受解释),并为其他排序或比较需求编写比较器。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)