What is the difference between Enumeration and Iterator ?
来源:互联网 发布:淘宝客活动报名技巧 编辑:程序博客网 时间:2024/05/18 17:00
What are differences between Enumeration and Iterator This question is from early ages ofinterview , I have not seen this question on recentinterviews but it was common during 2006-2007 , now days questions like implementation of HashMap, ConcurrentHashMap etc has take its place, nonetheless its very useful to know fundamental difference between Iterator and Enumeration.Some time its also asked as Iterator vs Enumeration or Enumeration vs Iterator which is same. important point to note is that both Iterator and Enumeration provides way to traverse or navigate through entire collection injava
Between Enumeration and Iterator, Enumeration is older and its there from JDK1.0 while iterator was introduced later. Iterator can be used withJava arraylist, java hashmap keyset and with any other collection classes.
Another similarity between Iterator and Enumeration in Java is that functionality of Enumeration interface is duplicated by the Iterator interface.
Only major difference between Enumeration and iterator is Iterator has a remove()method while Enumeration doesn't. Enumeration acts as Read-only interface, because it has themethods only to traverse and fetch the objects, where as by using Iterator we can manipulate the objects like adding and removing the objects from collection e.g. Arraylist.
Also Iterator is more secure and safe as compared toEnumerationbecause it does not allow other thread to modify the collection object while some thread is iterating over it and throwsConcurrentModificationException.This is by far most important fact for me for deciding between Iterator vs Enumeration in Java.
In Summary both Enumeration and Iterator will give successive elements, but Iterator isnew and improved version where method names are shorter, and has new method called remove. Here is a short comparison:
Enumeration
hasMoreElement()
nextElement()
N/A
Iterator
hasNext()
next()
remove()
So Enumeration is used when ever we want to make Collection objects as Read-only.
if you like to read interview questions you can alsocheck
if you like to read interview questions you can alsocheck
Why String is immutable in Java
Top 20 core Java interview questions in Java
10 Java Singleton pattern interview questions
10 interview questions on java serialization
15 multi-threading interview questions asked in Investment banks
Read more: http://javarevisited.blogspot.com/2010/10/what-is-difference-between-enumeration.html#ixzz2ki1uv7nU
- What is the difference between Enumeration and Iterator ?
- Java - What is difference between Enumeration and Iterator?
- What is the difference between test, [ and [[ ?
- Difference between Enumeration and Iterator in Java
- what is the difference between the setTimeout and setInterval
- What is the difference between DHTML and the DOM?
- What is the difference between the mouseover and mouseenter events?
- What is the difference between AWT and SWT?
- What is the difference between User Control and Custom Control?
- What is the difference between an EXE and a DLL?
- What is the difference between XML and C or C ?
- What is the difference between SMOD and CMOD?
- what is the difference between little-endian and big-endian.
- What is the difference between procedural and nonprocedural language?
- What is the difference between a thread and a process?
- What is the difference between objectForKey and valueForKey?
- What is the difference between Microsoft TMG and UAG ?
- What is the Difference Between http and https?
- 虚析构函数、纯虚析构函数
- 我的LFS之旅!!!!!!!
- Difference between ConcurrentHashMap and Collections.synchronizedMap and Hashtable in Java
- IOS 通过UITableView上的Button传递参数
- 数据库优化之系统设计方面思考
- What is the difference between Enumeration and Iterator ?
- Linux NAT共享上网脚本
- spark中的action和transformation
- 百度图片api
- Why String is immutable or final in Java
- 数据库优化之 数据库不同应用方向优化
- 正则表达式
- ubuntu下eclipse中android模拟器打不开解决
- 简单排序的Java实现与效率分析