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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 小路飞 中级黑马   /  2013-3-19 14:07  /  1025 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 侯国奇 于 2013-3-20 00:46 编辑

想问一下,是不是只有TreeSet和TreeMap可以用比较器?其他集合只能用Comparable?

2 个回复

倒序浏览
先明确为什么要用比较器,如果你的集合都没有或不需要排序功能,那你用比较器干什么?
回复 使用道具 举报
TreeSet的底层数据结构是二叉树,TreeSet其实就是TreeMap集合中的KeySet。

二叉树在排序时需要比较两个元素的自然顺序,这时候就需要使用到Comparable接口中的compareTo方法或Comparator接口的compare(Object o1,Object o2方法)。

其它集合并不用比较元素的自然顺序,自然就用不到Comparable或Comparator

评分

参与人数 1技术分 +1 收起 理由
黄玉昆 + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马