Java 集合 Hashtable

来源:这里教程网 时间:2026-02-17 20:13:37 作者:

该类实现了一个哈希表,它将键映射到值。任何非null对象都可以用作键或值。Hashtable类似于HashMap,但它是同步的。HashMap和Hashtable类之间几乎没有什么区别,你可以在以下网址详细阅读:HashMap和Hashtable之间的区别。

在本教程中,我们将了解如何创建Hashtable,如何填充其条目,然后我们将学习如何使用Enumeration显示其键值对。在本文的最后,我们将看到Hashtable类的Hashtable教程和方法。

示例

import java.util.Hashtable;import java.util.Enumeration;public class HashtableExample { public static void main(String[] args) {   Enumeration names;   String key;   // Creating a Hashtable   Hashtable<String, String> hashtable =               new Hashtable<String, String>();   // Adding Key and Value pairs to Hashtable   hashtable.put("Key1","Chaitanya");   hashtable.put("Key2","Ajeet");   hashtable.put("Key3","Peter");   hashtable.put("Key4","Ricky");   hashtable.put("Key5","Mona");   names = hashtable.keys();   while(names.hasMoreElements()) {      key = (String) names.nextElement();      System.out.println("Key: " +key+ " & Value: " +      hashtable.get(key));   } }}

输出:

Key: Key4 & Value: RickyKey: Key3 & Value: PeterKey: Key2 & Value: AjeetKey: Key1 & Value: ChaitanyaKey: Key5 & Value: Mona

Hashtable类的方法:

1)void clear():从Hashtable中删除所有键值映射并使其为空。清除此哈希表,使其不包含任何键。

2)Object clone():创建此哈希表的浅表副本。复制哈希表本身的所有结构,但不克隆键和值。这是一项相对昂贵的操作。

3)boolean contains(Object value):测试某个键是否映射到此哈希表中的指定值。此操作比containsKey方法更昂贵。
请注意,此方法的功能与containsValue相同(它是集合框架中Map接口的一部分)。

4)boolean isEmpty():测试此哈希表是否将键没有映射到值。

5)Enumeration keys():返回哈希表中包含的键的枚举。

6)Object put(Object key, Object value):将指定的键映射到此哈希表中的指定值。

7)void rehash():增加哈希表的大小并重新哈希其所有键。

8)Object remove(Object key):从该哈希表中删除键(及其对应的值)。

9)int size():返回 Hashtable 中存在的键值映射的数量。

10)String toString():返回哈希表的等效字符串。

11)boolean containsKey(Object key):测试指定的对象是否是此哈希表中的键。

12)boolean containsValue(Object value):测试指定的对象是否为此哈希表中的值。如果哈希表中存在某个等于value的值,则返回true。如果未找到该值,则返回false。

13)Enumeration elements():返回哈希表中包含的值的枚举。

14)Object get(Object key):返回指定键映射到的值,如果此映射不包含键的映射,则返回null。

相关推荐