这两个接口区别

这两个接口区别

请问这两个接口的区别除了是不是在同一个类实现接口,还有什么区别呢?如果只是这点区别,Comparable这个接口明显简便一点,那干嘛还要有Comparator这个接口呢

正在回答

登陆购买课程后可参与讨论,去登陆

1回答

同学你好,Comparable是java.lang包下的接口, 而Comparator是java.util包下的接口,这两个接口都是用来实现排序的

区别:

1、实现了Comparable的意思是我可以把自己和另一个对象进行比较;而实现了Comparator的意思是我可以比较其他两个对象;也就是说Comparable是一个可比较的对象可以将自己与另一个对象进行比较;而Comparator是比较两个不同的对象。

2、使用Comparable需要修改原先的实体类,是属于一种自然排序。而Comparator则不用修改原先类。

3、即使修改了Comparable实体类,Comparable也仅有一种比较规则。而Comparator可以实现多个,来提供多个比较规则。

在使用时,一般Comparable接口可以作为实现类的默认排序算法,Comparator接口则用于一个类的扩展排序

综上所述,每个接口都有一定的好处,不能确切的说不去使用哪一个哟。

如果我的回答解决了你的疑惑,请采纳!祝学习愉快!


问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师