Iterator和Enumeration的主要区别 (1)java中的集合类都提供了返回Iterator的方法,就是迭代器,它和Enumeration(枚举)的主要区别其实 就是Iterator可以删除元素,但是Enumration却不能。 (2)还有一点要注意的就是,使用Iterator来遍历集合时,应使用Iterator的remove()方法来删除集合中的元素,使用集合的remove()方法将抛出ConcurrentModificationException异常。 (3)Enumeration 接口的功能与 Iterator 接口的功能是重复的。此外,Iterator 接口添加了一个可选的移除操作,并使用较短的方法名。新的实现应该优先考虑使用 Iterator 接口而不是 Enumeration 接口。 (4)迭代器与枚举有两点不同: ·迭代器允许调用者利用定义良好的语义在迭代期间从迭代器所指向的 collection 移除元素方法名称得到了改进。 |