Java Hashtable 的迭代器是通过 Enumeration 接口实现的。Enumeration 是一个古老的迭代器接口,它在 Java 1.0 时代就被引入了。Hashtable 的 keySet()、values() 和 elements() 方法分别返回一个包含所有键、值和元素的 Enumeration 对象。然后,你可以使用这些 Enumeration 对象遍历 Hashtable 中的内容。
以下是一个简单的示例,展示了如何使用 Hashtable 的迭代器(Enumeration)遍历键、值和元素:
import java.util.Hashtable;
import java.util.Enumeration;
public class HashtableIteratorExample {
public static void main(String[] args) {
Hashtable<String, Integer> hashtable = new Hashtable<>();
hashtable.put("one", 1);
hashtable.put("two", 2);
hashtable.put("three", 3);
// 获取键的 Enumeration
Enumeration<String> keys = hashtable.keys();
System.out.println("Keys:");
while (keys.hasMoreElements()) {
System.out.println(keys.nextElement());
}
// 获取值的 Enumeration
Enumeration<Integer> values = hashtable.elements();
System.out.println("Values:");
while (values.hasMoreElements()) {
System.out.println(values.nextElement());
}
// 获取元素的 Enumeration
Enumeration<Object> entries = hashtable.elements();
System.out.println("Entries:");
while (entries.hasMoreElements()) {
System.out.println(entries.nextElement());
}
}
}
需要注意的是,Hashtable 是同步的,因此在多线程环境下使用它是安全的。然而,由于其古老的 API 设计,许多开发者更倾向于使用 HashMap 和新的迭代器实现(如 Iterator 和 Iterable)。在现代 Java 开发中,Hashtable 已经被 HashMap 取代,成为更常用的键值对存储结构。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。