Comparable 和 Comparator 的区别

[复制链接]
发表于 2023-3-8 13:03:13 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
1.Comparator位于包java.util下,而Comparable位于包java.lang下
2.Comparable接口将比较代码嵌入自身类中,而Comparator在一个独立的类中实现比较。
3.Comparator接口的比较方法compare(A,B)有两个参数,Comparable的比较方法compareTo(A)只有1个参数
a.compareTo(obj):如果a大于形参对象obj,则返回1;
compare(Object o1,Object o2):如果o1大于o2,返回正整数
两个方法都是左边大于右边返回正数,默认从小到大排列
  1.         // 定制排序的用法,此时从大到小排列
  2.         Collections.sort(arrayList, new Comparator<Integer>() {
  3.             @Override
  4.             public int compare(Integer o1, Integer o2) {
  5.                 return o2.compareTo(o1);
  6.             }
  7.         });
复制代码
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
继续阅读请点击广告
回复

使用道具 举报

×
登录参与点评抽奖,加入IT实名职场社区
去登录
快速回复 返回顶部 返回列表