社区
Java SE
帖子详情
请问HASHSET和TREESET有什么区别?
stslayer
2008-02-20 10:27:44
RT
...全文
2629
16
打赏
收藏
请问HASHSET和TREESET有什么区别?
RT
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
16 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
obullxl
2009-12-25
打赏
举报
回复
[Quote=引用 2 楼 kyo100900 的回复:]
先看看源码:
public class TreeSet <E>
extends AbstractSet <E>
implements SortedSet <E>, Cloneable, java.io.Serializable
public class HashSet <E>
extends AbstractSet <E>
implements Set <E>, Cloneable, java.io.Serializable
其中SortedSet中组合了一个:Comparator <? super E> comparator();
因此 TreeSet与HashSet最大区别在于排序.........
[/Quote]
很有说服力!!!!!
smartcatiboy
2009-12-25
打赏
举报
回复
Hashset不保留先后、大小和次序
你输入12345,遍历出来可能是31524
LinkedSet保留先后次序
你输入12345,遍历保证12345
TreeSet保留大小次序
你输入31524,遍历结果是12345
Map同
AspireHouse
2009-12-25
打赏
举报
回复
TreeSet查找更加迅速
liuxuejin
2009-12-24
打赏
举报
回复
如果真想深入理解,你得好好看数据结构!!
your_leftH
2009-12-19
打赏
举报
回复
TreeSet --> Tree
HashSet --> Hash
SambaGao
2009-12-19
打赏
举报
回复
很好
zuomingyu2
2009-12-19
打赏
举报
回复
学习了
yang677888
2009-12-19
打赏
举报
回复
HashMap和Hashtable的区别。
答案:HashMap是Hashtable的轻量级实现(非线程安全的实现),他们都实现了Map接口,
主要区别在于HashMap允许空(null)键值(key)与空值(value),由于非线程安全,效率上可能高于Hashtable,Hashtable不允许有空(null)键值(key)与空值(value)。
http://topic.csdn.net/u/20091211/12/63a8e47b-a98f-4e59-b294-19dffd706a0b.html
wibnmo
2009-12-19
打赏
举报
回复
1.TreeSet实现 Set 接口,该接口由 TreeMap 实例支持。保证排序后的 set 按照升序排列元素。
2.HashSet类实现 Set 接口,由哈希表(实际上是一个 HashMap 实例)支持。它不保证集合的迭代顺序;特别是它不保证该顺序恒久不变。此类允许使用 null 元素。
chiphuo
2008-10-28
打赏
举报
回复
1.HashSet无序集合,放入顺序与取出顺序不一致。
2.TreeSet自动排好序,而且必须放相同的类型,放不同的类型就会报错。
zhangfan123
2008-10-28
打赏
举报
回复
1、Treeset中的数据是自动排好序的,不允许放入null值
2、HashSet中的数据是无序的,可以放入null,但只能放入一个null,两者中的值都不能重复,就如数据库中唯一约束
3、HashSet要求放入的对象必须实现HashCode()方法,放入的对象,是以hashcode码作为标识的,而具有相同内容的String对象,hashcode是一样,所以放入的内容不能重复。但是同一个类的对象可以放入不同的实例
malligator
2008-02-23
打赏
举报
回复
一个是排序的,一个是不排序的
所以用要么放入TreeSet里面的对象都实现Comparable接口,要么创建TreeSet的时候制定Comparator
geniuschess235
2008-02-23
打赏
举报
回复
一个是排序的,一个是不排序的
xiaoben008
2008-02-20
打赏
举报
回复
学习,,,,,
kyo100900
2008-02-20
打赏
举报
回复
先看看源码:
public class TreeSet<E>
extends AbstractSet<E>
implements SortedSet<E>, Cloneable, java.io.Serializable
public class HashSet<E>
extends AbstractSet<E>
implements Set<E>, Cloneable, java.io.Serializable
其中SortedSet中组合了一个:Comparator<? super E> comparator();
因此 TreeSet与HashSet最大区别在于排序.........
treeroot
2008-02-20
打赏
举报
回复
区别很大
HashSet 是哈希表实现的,无序的结合,表现为检索(contains)的时间复杂度是 o(0)
TreeSet 是红黑树实现的,排序的集合
排序之
HashSet
和
TreeSet
的
区别
NULL 博文链接:https://elvin-chu.iteye.com/blog/1942033
详解Java中
HashSet
和
TreeSet
的
区别
主要介绍了详解Java中
HashSet
和
TreeSet
的
区别
的相关资料,需要的朋友可以参考下
跟汤老师学Java(第13季):集合
集合相关API 4.List:ArrayList、LinkedList、Vector、Stack 5.Set:
HashSet
、
TreeSet
6.Map:HashMap、Hashtable、Properties 7.Collections工具类 教学全程采用笔记+代码案例的形式讲解,通俗易懂!!!
HashSet
和
TreeSet
_围墙之外
HashSet
和
TreeSet
_围墙之外.rar
HashSet
和
TreeSet
.doc
HashSet
和
TreeSet
的
区别
Java SE
62,614
社区成员
307,327
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章