社区
Java SE
帖子详情
请问HASHSET和TREESET有什么区别?
stslayer
2008-02-20 10:27:44
RT
...全文
2689
16
打赏
收藏
请问HASHSET和TREESET有什么区别?
RT
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
16 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
老牛同学
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
的
区别
在Java编程语言中,集合框架是处理数据的重要组成部分,其中`...同时,源码阅读也是提升技能的好方法,通过查看`
HashSet
`和`
TreeSet
`的源码,可以更深入地了解它们的工作原理,这有助于优化代码并解决可能出现的问题。
HashSet
和
TreeSet
_围墙之外
总结一下,
HashSet
和
TreeSet
的主要
区别
在于: 1. 存储结构:
HashSet
使用哈希表,
TreeSet
使用红黑树。 2. 顺序:
HashSet
无特定顺序,
TreeSet
保持排序。 3. 插入、删除和查找效率:
HashSet
平均O(1),最坏O(n);
TreeSet
...
HashSet
和
TreeSet
使用方法的
区别
解析
HashSet
和
TreeSet
使用方法的
区别
解析
HashSet
和
TreeSet
都是Java集合框架中的Set接口实现,用于存储不重复的元素。但是,它们在使用方法和实现机理上有很大的
区别
。 首先,从使用方法上讲,
HashSet
和
TreeSet
都可以...
详解Java中
HashSet
和
TreeSet
的
区别
HashSet
和
TreeSet
是 Java 中两个常用的集合类,它们都实现了 Set 接口,但它们之间有很大的
区别
。本文将详细介绍
HashSet
和
TreeSet
的
区别
,帮助大家更好地理解和使用这些集合类。
HashSet
HashSet
是一个...
HashSet
和
TreeSet
.doc
HashSet
和
TreeSet
是 Java 中两种常用的 Set 集合实现,它们都继承自 Set 接口,但实现方式和特性上存在显著差异。 首先,
HashSet
是基于哈希表(HashMap 实例)来存储元素的,因此它提供了快速的插入、删除和...
Java SE
62,629
社区成员
307,261
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章