Java 哈希表或映射中枚举的用途是什么?
我在寻找一些关于堆栈溢出的哈希表示例,发现如下:Java 哈希表或映射中枚举的用途是什么?,java,hashmap,hashtable,enumeration,Java,Hashmap,Hashtable,Enumeration,我在寻找一些关于堆栈溢出的哈希表示例,发现如下: Enumeration enumeration = companies.elements(); while ( enumeration.hasMoreElements() ) { System.out.println("hashtable values: "+enumeration.nextElement()); } 为什么我们要使用枚举,特别是在哈希表中,它的意义是什么?枚举基本上是迭代器的一种旧形式。基本上,它们允许您遍历集合并单独
Enumeration enumeration = companies.elements();
while ( enumeration.hasMoreElements() ) {
System.out.println("hashtable values: "+enumeration.nextElement());
}
为什么我们要使用枚举,特别是在哈希表中,它的意义是什么?枚举基本上是
迭代器的一种旧形式。基本上,它们允许您遍历集合并单独获取其所有元素
我们这样做的原因是,对于HashTable
、HashMap
、HashSet
、LinkedList
等等,您无法通过索引高效地访问元素。事实上,在前三种情况下,指数没有任何意义。因此,可以使用迭代器或枚举来循环访问元素
正如chrylis在评论中提到的,请不要使用Enumeration
s<代码>迭代器
s较新,具有一些特殊的语法功能,如增强的for
循环。枚举基本上是迭代器
s的旧形式。基本上,它们允许您遍历集合并单独获取其所有元素
我们这样做的原因是,对于HashTable
、HashMap
、HashSet
、LinkedList
等等,您无法通过索引高效地访问元素。事实上,在前三种情况下,指数没有任何意义。因此,可以使用迭代器或枚举来循环访问元素
正如chrylis在评论中提到的,请不要使用
Enumeration
s<代码>迭代器s较新,并具有一些特殊的语法功能,如增强的for
循环。如果您正在编写新代码,请不要使用其中任何一种,因为它们已经过时。如果您正在编写新代码,请不要使用任何一种,因为它们已经过时。