社区
Java SE
帖子详情
关于HashMap、HashSet、Hashtable的问题
凌风_Java高性能架构
2010-01-15 08:02:59
HashMap在java api中定义为:基于哈希表的 Map 接口的实现。此实现提供所有可选的映射操作,并允许使用 null 值和 null 键。
HashSet:此类实现 Set 接口,由哈希表(实际上是一个 HashMap 实例)支持。
Hashtable:此类实现一个哈希表,该哈希表将键映射到相应的值。
我想问的问题是:这三个定义中的哈希表如何理解。Hashtable实现一个哈希表,不太明白。请高手、大虾帮忙解答,谢谢!
...全文
147
12
打赏
收藏
关于HashMap、HashSet、Hashtable的问题
HashMap在java api中定义为:基于哈希表的 Map 接口的实现。此实现提供所有可选的映射操作,并允许使用 null 值和 null 键。 HashSet:此类实现 Set 接口,由哈希表(实际上是一个 HashMap 实例)支持。 Hashtable:此类实现一个哈希表,该哈希表将键映射到相应的值。 我想问的问题是:这三个定义中的哈希表如何理解。Hashtable实现一个哈希表,不太明白。请高手、大虾帮忙解答,谢谢!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
12 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
wekui
2010-01-16
打赏
举报
回复
其实这种网上资料很多,当你可以可以在搜索引擎找到相关信息的话,就不要再论坛里浪费时间了
wekui
2010-01-16
打赏
举报
回复
mark
licip
2010-01-16
打赏
举报
回复
HashMap是效率比较高,但它是非同步的。Hashtable效率比HashMap要差一些,但它是同步的。
存在666
2010-01-16
打赏
举报
回复
冲突了咋办呢!????
huntor
2010-01-15
打赏
举报
回复
[Quote=引用 7 楼 inkfish 的回复:]
这是基础数据结构的知识。
先要知道什么是hash,然后要知道hash存东西的原理,然后就知道什么叫哈希表了
[/Quote]
hash 就是一种映射, Java中就是从其他类型映射到int。理想的hash是一一映射。实际上很难做到,于是冲突发生了。
墨水鱼
2010-01-15
打赏
举报
回复
这是基础数据结构的知识。
先要知道什么是hash,然后要知道hash存东西的原理,然后就知道什么叫哈希表了
garysoft
2010-01-15
打赏
举报
回复
hashmap继承了map借口,是一个映射集合。
hashset继承了set接口,是一个无序的set集合。
hashmap和hashtable没有太大区别,不同之处在于HashMap是非同步的,并且允许null,即null value和null key
另外:
http://hi.baidu.com/lei55022033/blog/item/d15622ec63d25c342797916f.html
看看
huntor
2010-01-15
打赏
举报
回复
能从音译顾名思义的不是一般的彪悍
z_lping
2010-01-15
打赏
举报
回复
不要哈希哈希的,整个音译看着别扭。
要么用Hashing,要么叫散列。
applerockhool
2010-01-15
打赏
举报
回复
[Quote=引用 2 楼 win_justsoso 的回复:]
就是查看了AP不明白这其中说的“哈希表”的意思,才寻求解答。如果不能解释,请不要乱说。谢谢!
[/Quote]
看看基础数据结构,哈希表顾名思义啊
凌风_Java高性能架构
2010-01-15
打赏
举报
回复
就是查看了AP不明白这其中说的“哈希表”的意思,才寻求解答。如果不能解释,请不要乱说。谢谢!
借我那把枪吧
2010-01-15
打赏
举报
回复
直接查看API文档不就结了吗,然后多练,其他都假的,不要再发这样的问题了,你按我说的去做,之后你都会发现你发这样的问题真的很幼稚
谈
HashMap
,
HashSet
,
HashTable
容易被我们忽视的
问题
本文深入探讨
HashMap
的内部结构,包括Entry数组、性能影响因素、哈希冲突处理及并发
问题
。同时对比了
HashSet
、
HashTable
和Concurrent
HashMap
的特点,以及它们在不同并发场景下的性能表现。
HashMap
底层原理及各种
问题
(与
HashTable
、
HashSet
、ArrayMap的区别)
本文详细探讨了
HashMap
的工作原理,包括hashing概念、解决碰撞的方法、equals()和hashCode()的应用及其重要性,以及
HashMap
在多线程环境下的表现。对比了
HashMap
与
HashTable
、
HashSet
的区别,解析了
HashMap
的线程安全性、死锁
问题
及重新调整大小的机制。
Java基础-源码分析-
HashMap
/
HashTable
/
HashSet
/Linked
HashSet
本文主要介绍了Java中
HashMap
、
HashTable
、
HashSet
、Linked
HashSet
在源码上的区别。详细阐述了
HashMap
的特点、结构、属性、构造方法及方法分析,如put、get、resize方法。还探讨了
HashMap
的扩容机制及如何规避扩容性能消耗,同时提及JDK7中
HashMap
的闭环
问题
及JDK8的改进。
HashMap
、
HashTable
、
HashSet
简介
本文详细解析了
HashMap
的数据结构、工作原理及线程安全
问题
。探讨了
HashMap
与
HashTable
、
HashSet
的区别,并介绍了
HashMap
如何处理哈希碰撞和扩容策略。
Java面试知识点(一)
hashmap
、
hashtable
和
hashset
本文深入探讨了Java中的
HashMap
、
Hashtable
和
HashSet
。
HashMap
是一个“链表散列”的数据结构,非线程安全,允许null键值;
Hashtable
线程安全,不接受null值。两者都实现了Map接口,但
HashMap
更适用于非同步环境。
HashSet
基于
HashMap
实现,不允许重复元素,要求对象重写equals()和hashCode()。此外,文章还讨论了equals()、hashCode()在对象比较中的作用,以及Java中判断对象相同性的标准和哈希表的效率
问题
。
Java SE
62,621
社区成员
307,251
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章