Comparable和Comparator的区别?

tea_year 2014-07-31 08:37:08
如题。Comparable和Comparator的区别?
...全文
127 点赞 收藏 6
写回复
6 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
a137655624 2014-07-31
Comparable 比较两个值 方法里面俩参数 Comparator 自身与其他值比 方法里面一个参数
回复
兔子托尼啊 2014-07-31
网上 搜索很全 的
回复
hedley 2014-07-31
举例:Collections工具类有两个重载的sort方法
public static <T extends Comparable> void sort(List<T> list)
public static <T> void sort(List<T> list, Comparator<T> c)
如果一个List里面装的元素都是Comparable的,那么可以直接进行sort排列,因为实现Comparable接口需要重写comparaTo方法,排序时调用来比较顺序 如果一个List里面装的元素不是Comparable的,要实现他们互相之间元素的比较,就要用到Comparator了,因为Comparator封装的compare方法可以实现元素的比较
回复
suciver 2014-07-31
JDK文档里面写的最清楚
回复
zhjdg 2014-07-31
2个接口。 中文意思:可比较 比较器 比较器,一个机器用来比较元素的。 可比较,一个元素可以跟另一个具有可比较属性的元素进行比较。
回复
王者归来2014 2014-07-31
comparable& Comparator 都用实现集合排序Comparable集合内部定义实现排序Comparator集合外部实现排序所想实现排序需要集合外定义Comparator接口compare()或集合内实现Comparable接口compareTo() Comparable象本身已经支持自比较所需要实现接口(String Integer自完比较操作) Comparator专用比较器象支持自比较或者自比较函数能满足要求写比较器完两象间比较
回复
发帖
Java SE
创建于2007-09-28

6.1w+

社区成员

Java 2 Standard Edition
申请成为版主
帖子事件
创建了帖子
2014-07-31 08:37
社区公告
暂无公告