इस पोस्ट में, हम जावा में इटरेटर और एन्यूमरेशन इंटरफेस के बीच अंतर को समझेंगे।
Iterator
यह एक यूनिवर्सल कर्सर है।
इसे सभी कलेक्शन क्लासेस पर लागू किया जा सकता है।
इसमें 'remove' मेथड होता है।
यह एक लिगेसी इंटरफेस नहीं है।
इसका उपयोग HashMap, LinkedList, ArrayList, HashSet, TreeMap, और TreeSet पर ट्रैवर्स करने के लिए किया जा सकता है।
ट्रैवर्स करते समय कलेक्शन पर ऑपरेशन करने के लिए मॉडिफिकेशन किए जा सकते हैं।
Enumeration
यह एक यूनिवर्सल कर्सर नहीं है।
यह केवल लिगेसी क्लासेस पर लागू होता है।
इसमें 'remove' मेथड नहीं होता है।
यह एक लिगेसी इंटरफेस है।
यह इंटरफेस रीड-ओनली इंटरफेस की तरह कार्य करता है।
इसलिए, कलेक्शन में एलिमेंट्स पर ट्रैवर्स करते समय कोई मॉडिफिकेशन नहीं किया जा सकता।
इसका उपयोग Vectors, और Hashtable पर ट्रैवर्स करने के लिए किया जा सकता है।