A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 未名以律 中级黑马   /  2014-8-12 13:53  /  1951 人查看  /  7 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 未名以律 于 2014-8-13 07:54 编辑

comparator与comparable都是用于比较,有什么区别?

点评

认真看视频!  发表于 2014-8-12 13:54

7 个回复

倒序浏览
一个是使用继承的方法从父类那儿获得方法,一个是自己写的比较器,我感觉是这样的。
回复 使用道具 举报
comparator是用于比较器的,在创建TreeMap的时候传一个实例对象   让需要排序的类实现comparable 重写compareTo方法 建立自己的比较方式
回复 使用道具 举报
这俩方法主要用于集合中,comparable用于复写集合中元素的compaeTo方法,comparator主要用于作为集合的比较器。
回复 使用道具 举报
一个自己干活,一个帮别人干活
回复 使用道具 举报
本帖最后由 idency 于 2014-8-12 21:44 编辑

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

评分

参与人数 1技术分 +1 收起 理由
格子、 + 1

查看全部评分

回复 使用道具 举报
陶圣虎 发表于 2014-8-12 21:38
一个自己干活,一个帮别人干活

形象的比喻,哈哈
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马