Comparable 和 Comparator 的区别
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,返回正整数
两个方法都是左边大于右边返回正数,默认从小到大排列
// 定制排序的用法,此时从大到小排列
Collections.sort(arrayList, new Comparator<Integer>() {
@Override
public int compare(Integer o1, Integer o2) {
return o2.compareTo(o1);
}
});
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek “源神”启动!「GitHub 热点速览」
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· 我与微信审核的“相爱相杀”看个人小程序副业
· C# 集成 DeepSeek 模型实现 AI 私有化(本地部署与 API 调用教程)
· spring官宣接入deepseek,真的太香了~