Comparable和Comparator的区别

   日期:2024-12-27    作者:zzzhengya2 移动:http://mip.riyuangf.com/mobile/quote/62295.html

使用Collections类的sort()方法

sort(List<T> list) -根据元素的自ii然顺序对指定列表按升序进行排序.

1、Comparator接口位于java.util包下,而Comparable接口位于java.lang包下

2、对于Comparator接口,可以看到它的compare()方法的参数是两个对象,比如我们队Cat类进行比较,那么这里就是两个要比较的Cat类的对象,所以可以有一个单独的类实现Comparator

对于Comparable接口,它的方法只有一个对象作为参数,所以要比较的类需要实现Comparable接口,将当前对象与方法参数中的对象进行比较。

3、关于应用场景

一般情况下如果对某个类进行排序,比如Cat类,如果使用Comparable接口的方式,那么Cat类需要实现Comparable接口。如果Cat类通过Comparable接口的方式实现排序,比如通过name排序了。那么我们还希望通过age进行排序,这时不希望修改Cat类,那此时就需要使用Comparator接口了


特别提示:本信息由相关用户自行提供,真实性未证实,仅供参考。请谨慎采用,风险自负。


举报收藏 0评论 0
0相关评论
相关最新动态
推荐最新动态
点击排行
{
网站首页  |  关于我们  |  联系方式  |  使用协议  |  隐私政策  |  版权隐私  |  网站地图  |  排名推广  |  广告服务  |  积分换礼  |  网站留言  |  RSS订阅  |  违规举报  |  鄂ICP备2020018471号