黑马程序员技术交流社区

标题: comparator与comparable [打印本页]

作者: 未名以律    时间: 2014-8-12 13:53
标题: comparator与comparable
本帖最后由 未名以律 于 2014-8-13 07:54 编辑

comparator与comparable都是用于比较,有什么区别?
作者: 复仇者联盟    时间: 2014-8-12 14:07
一个是使用继承的方法从父类那儿获得方法,一个是自己写的比较器,我感觉是这样的。
作者: zhouqun    时间: 2014-8-12 21:21
comparator是用于比较器的,在创建TreeMap的时候传一个实例对象   让需要排序的类实现comparable 重写compareTo方法 建立自己的比较方式
作者: 席杰    时间: 2014-8-12 21:28
这俩方法主要用于集合中,comparable用于复写集合中元素的compaeTo方法,comparator主要用于作为集合的比较器。
作者: 陶圣虎    时间: 2014-8-12 21:38
一个自己干活,一个帮别人干活
作者: idency    时间: 2014-8-12 21:41
本帖最后由 idency 于 2014-8-12 21:44 编辑

1.Comparator是作为一个参数,在treeset或者treemap集合创建时,在构造函数中传入的!Comparator中的Compare方法用于比较传入的两个对象是否重复,可以理解为是让tree类集合本身具有了比较性!                                                                                    2.而comparable作为接口是让对象进行实现的,也就是让你准备存入tree类集合的对象本身具有比较性!然后使用对象的compareTo方法进行对象是否重复的比较!


作者: 未名以律    时间: 2014-8-13 07:53
陶圣虎 发表于 2014-8-12 21:38
一个自己干活,一个帮别人干活

形象的比喻,哈哈




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2