Java Dictionary 类 和 Hashtable 类
Dictionary 类
Dictionary 类是一个抽象类,用来存储键/值对,作用和Map类相似。
给出键和值,你就可以将值存储在Dictionary对象中。一旦该值被存储,就可以通过它的键来获取它。所以和Map一样, Dictionary 也可以作为一个键/值对列表。
但 Dictionary 类已经过时。可以实现Map接口来获得键/值存储功能
Dictionary定义的抽象方法如下表所示:
No | 方法与描述 |
---|---|
1 | enumeration elements() 返回字典中包含的值的枚举。 |
2 | Object get(Object key) 返回包含与键相关联的值的对象。如果键不在字典中,则返回一个空对象。 |
3 | boolean isEmpty() 如果字典为空,返回true;如果字典包含至少一个键,则返回false。 |
4 | enumeration keys() 返回字典中包含的键的枚举。 |
5 | Object put(Object key, Object value) 将键及其值插入字典中。如果键尚未在字典中,则返回null;如果键已经在字典中,则返回与键相关联的先前值。 |
6 | Object remove(Object key) 移除键及其值。返回与键相关联的值。如果键不在字典中,则返回null。 |
7 | int size() 返回字典中的条目数。 |
Hashtable 类
Hashtable是原始的 java.util 的一部分, 是一个 Dictionary 具体的实现。然而,Java 2 重构的Hashtable实现了Map接口,因此,Hashtable现在集成到了集合框架中。它和 HashMap 类很相似,但是它支持同步。
像HashMap一样,Hashtable在哈希表中存储键/值对。当使用一个哈希表,要指定用作键的对象,以及要链接到该键的值。
然后,该键经过哈希处理,所得到的散列码被用作存储在该表中值的索引。
构造函数列表
序号 | 构造函数和描述 |
---|---|
1 | Hashtable( ) 这是哈希表的默认构造函数,它实例化Hashtable类。 |
2 | Hashtable(int size) 这个构造函数接受一个整数参数,并创建一个具有由整数值size指定的初始大小的哈希表。 |
3 | Hashtable(int size, float fillRatio) 这创建了一个具有由大小指定的初始大小和由fillRatio指定的填充比率的哈希表。此比率必须介于0.0和1.0之间,并确定哈希表在重新调整大小之前可以有多满。 |
4 | **Hashtable(Map t) ** 这使用给定的映射构造一个Hashtable。哈希表的容量被设置为 t 的两倍 |
除了从 Map 接口中定义的方法外,其他方法
序号 | 方法及描述 |
---|---|
1 | void clear( ) 重置并清空哈希表。 |
2 | Object clone( ) 返回调用对象的副本。 |
3 | boolean contains(Object value) 如果哈希表中存在与value相等的值,则返回true。如果找不到该值,则返回false。 |
4 | boolean containsKey(Object key) 如果哈希表中存在与key相等的键,则返回true。如果找不到该键,则返回false。 |
5 | boolean containsValue(Object value) 如果哈希表中存在与value相等的值,则返回true。如果找不到该值,则返回false。 |
6 | Enumeration elements( ) 返回哈希表中包含的值的枚举。 |
7 | Object get(Object key) 返回与key关联的值。如果哈希表中不存在该键,则返回空对象。 |
8 | boolean isEmpty( ) 如果哈希表为空,则返回true;如果至少包含一个键,则返回false。 |
9 | Enumeration keys( ) 返回哈希表中包含的键的枚举。 |
10 | Object put(Object key, Object value) 将键和值插入哈希表。如果键尚未存在于哈希表中,则返回空;如果键已经存在于哈希表中,则返回与键关联的先前值。 |
11 | void rehash( ) 增加哈希表的大小并重新哈希化所有键。 |
12 | Object remove(Object key) 删除键及其值。返回与键关联的值。如果哈希表中不存在该键,则返回空对象。 |
13 | int size( ) 返回哈希表中的条目数。 |
14 | String toString( ) 返回哈希表的字符串表示形式。 |