java hashtable原理 hashtable的底层实现原理


java hashtable原理 hashtable的底层实现原理

文章插图
hashtable底层实现原理如下:
1、HashTable类中,保存实际数据的,依然是Entry对象 。其数据结构与HashMap是相同的 。
【java hashtable原理 hashtable的底层实现原理】
2、HashTable类继承自Dictionary类,实现了三个接口,分别是Map,Cloneable和java.io.Serializable 。
3、HashTable中的主要方法,如put,get,remove和rehash等,与HashMap中的功能相同 。
hashtable类实现一个哈希表,该哈希表将键映射到相应的值 。任何非null对象都可以用作键或值 。为了成功地在哈希表中存储和获取对象,用作键的对象必须实现hashCode方法和equals方法 。Hashtable的实例有两个参数影响其性能:初始容量和加载因子 。Hashtable的实例有两个参数影响其性能:初始容量和加载因子 。容量是哈希表中桶的数量,初始容量就是哈希表创建时的容量 。注意,哈希表的状态为open:在发生“哈希冲突”的情况下,单个桶会存储多个条目,这些条目必须按顺序搜索 。加载因子是对哈希表在其容量自动增加之前可以达到多满的一个尺度 。初始容量和加载因子这两个参数只是对该实现的提示 。关于何时以及是否调用rehash方法的具体细节则依赖于该实现 。