这两个接口区别
请问这两个接口的区别除了是不是在同一个类实现接口,还有什么区别呢?如果只是这点区别,Comparable这个接口明显简便一点,那干嘛还要有Comparator这个接口呢
31
收起
正在回答
1回答
同学你好,Comparable是java.lang包下的接口, 而Comparator是java.util包下的接口,这两个接口都是用来实现排序的
区别:
1、实现了Comparable的意思是我可以把自己和另一个对象进行比较;而实现了Comparator的意思是我可以比较其他两个对象;也就是说Comparable是一个可比较的对象可以将自己与另一个对象进行比较;而Comparator是比较两个不同的对象。
2、使用Comparable需要修改原先的实体类,是属于一种自然排序。而Comparator则不用修改原先类。
3、即使修改了Comparable实体类,Comparable也仅有一种比较规则。而Comparator可以实现多个,来提供多个比较规则。
在使用时,一般Comparable接口可以作为实现类的默认排序算法,Comparator接口则用于一个类的扩展排序
综上所述,每个接口都有一定的好处,不能确切的说不去使用哪一个哟。
如果我的回答解决了你的疑惑,请采纳!祝学习愉快!
java工程师2020版
- 参与学习 人
- 提交作业 9393 份
- 解答问题 16556 个
综合就业常年第一,编程排行常年霸榜,无需脱产即可学习,北上广深月薪过万 无论你是未就业的学生还是想转行的在职人员,不需要基础,只要你有梦想,想高薪
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星