我正在寻找Stack Overflow上Hashtables的一些例子,并发现了这个:
Enumeration enumeration = companies.elements();
while ( enumeration.hasMoreElements() ) {
System.out.println("hashtable values: "+enumeration.nextElement());
}
为什么我们使用Enumerations,特别是在Hashtables中它的意义是什么?
答案 0 :(得分:5)
枚举基本上是Iterator
的旧形式。基本上,它们允许您浏览一个集合并单独获取所有元素。
我们这样做的原因是,对于HashTable
,HashMap
,HashSet
,LinkedList
等,您无法通过索引有效地访问元素。事实上,在前三个案例中,指数毫无意义。因此,可以使用迭代器或枚举来遍历元素以访问它们。
正如chrylis在评论中提到的那样,请不要使用Enumeration
。 Iterator
更新,并且具有一些特殊的语法功能,例如增强型for
循环。