Comparable和Comparator接口是干什么的?它们的区别是什么?

如题所述

第1个回答  推荐于2017-11-21
Java提供了只包含一个compareTo()方法的Comparable接口。这个方法可以个给两个对象排序。具体来说,它返回负数,0,正数来表明输入对象小于,等于,大于已经存在的对象。
Java提供了包含compare()和equals()两个方法的Comparator接口。compare()方法用来给两个输入参数排序,返回负数,0,正数表明第一个参数是小于,等于,大于第二个参数。equals()方法需要一个对象作为参数,它用来决定输入参数是否和comparator相等。只有当输入参数也是一个comparator并且输入参数和当前comparator的排序结果是相同的时候,这个方法才返回true。本回答被网友采纳

Comparable和Comparator接口是干什么的?列出它们的区别。
Comparable和Comparator接口是用来对自定义的class比较大小的。Comparator和 Comparable的区别:Comparator定义在Person的外部而Comparable定义在Person的内部。Comparable定义在Person的内部。public class Persion implements Comparable {..比较Person的大小..},因为已经实现了比较器,那么Person现在是一个可以比较大小...

Comparable和Comparator接口是干什么的?它们的区别是什么?
【答案】:Java提供了只包含一个compareTo()方法的Comparable接口。这个方法可以个给两个对象排序。具体来说,它返回负数,0,正数来表明输入对象小于,等于,大于已经存在的对象。Java提供了包含compare()和equals()两个方法的Comparator接口。compare()方法用来给两个输入参数排序,返回负数,0,正数表明第...

comparable和comparator的区别
Comparable & Comparator 都是用来实现集合中元素的比较、排序的,只是 Comparable 是在集合内部定义的方法实现的排序,Comparator 是在集合外部实现的排序,所以,如想实现排序,就需要在集合外定义 Comparator 接口的方法或在集合内实现 Comparable 接口的方法。Comparator位于包java.util下,而Comparable位于包 ...

comparable和comparator的区别
1.Comparable是对象内部需要实现的接口,如果一个对象要想用利用Array.sort进行排序,那么这个对象必须实现Comparable的接口,比较的实现是在对象的内部进行的。2.Comparator接口是在对象外实现的接口,主要是方便了对没有实现Comparable接口的对象的比较和排序,比如:当我们对已经有的一个类进行排序的时候,这...

Comparable和Comparator的区别
总结而言,`Comparable`和`Comparator`的主要区别在于:1. `Comparable`接口用于实现类内部的比较逻辑,适用于对象自比较的情况。2. `Comparator`接口则提供了一种独立的比较机制,适用于对象未实现`Comparable`接口或开发者希望自定义比较规则的场景。使用`Comparator`的优点在于其解耦性更强,无需修改对象...

comparable和Comparator 的区别
)。Comparable是一个对象本身就已经支持自比较所需要实现的接口(如String Integer自己就可以完成比较大小操作)而Comparator是一个专用的比较器,当这个对象不支持自比较或者自比较函数不能满足你的要求时,你可以写一个比较器来完成两个对象之间大小的比较。

...绕不开的内置接口——Comparable 和 Comparator
Java中的Comparable和Comparator是两个核心内置接口,它们在名称上看似相似,但作用各有不同。Comparable用于指示一个对象能够与其他对象进行比较,而Comparator则是提供外部比较机制的工具。让我们通过实例来深入理解它们。首先,Comparable接口(java.lang.Comparable)定义了一个可比较对象,如数字和字符串,它们...

来吧,一文彻底搞懂Java中的Comparable和Comparator
Comparator接口相较于Comparable接口,Comparator接口更加灵活。它主要提供了两个方法:compare()和equals()。compare()方法用于比较两个对象的顺序,返回值决定排序结果。而equals()方法则用于判断传入的参数是否匹配Comparator的设置。利用Comparator实现不同属性的排序示例中展示了如何创建一个Comparator,通过传入...

java的Comparable和Comparator区别
`Comparable`可以被视为一个对象内部的比较机制,它主要用于实现数据类型的自然排序规则。反之,`Comparator`作为外部比较器,通常用于更复杂或特定的比较逻辑,如排序算法。实现与使用场景 使用`Comparable`时,通常需将实现此接口的类与排序方法结合,直接使用该类创建的实例来进行比较。而借助`Comparator`,...

comparable和Comparator 有什么区别,来位大神给我讲解讲解,自认为能...
Comparable<T>是接口,实现此接口的类必须重写int compareTo(T t)方法。什么意思呢?就是说有个类的对象想要通过调用自身的方法能够跟同类型的另一个对象比较大小,就可以实现这个接口。比如我们想根据汽车的价值来比较大小:class Car implemets Comparable<Car> { private int length;private int price...

相似回答