Was ist der Unterschied zwischen Iterator und Enumeration?

Inhaltsverzeichnis:

Anonim

Die Hauptunterschied zwischen Iterator und Aufzählung ist das es ist möglich, Elemente einer Sammlung mit einem Iterator zu lesen und zu entfernen, während es nur möglich ist, die Elemente einer Sammlung mit einer Enumeration zu lesen.

Ein Computerprogramm ist ein Befehlssatz, der es der CPU ermöglicht, eine bestimmte Aufgabe auszuführen. Programmierer können das Programm mit einer höheren Programmiersprache wie Java schreiben. Es gibt Mechanismen, um eine Menge von Objekten in Java zu manipulieren. Zwei davon sind Iterator und Enumeration.

Aufzählung, Iterator, Java

Was ist Iterator?

Iterator ist eine Schnittstelle im Java Collection Framework. Mit anderen Worten, es ermöglicht, die Elemente der Sammlung nacheinander durchzugehen. Es ist möglich, Elemente wie Listen, Mengen und Karten zu durchlaufen. Iterator ermöglicht es dem Aufrufer, die Elemente während der Iteration der Elemente aus der angegebenen Auflistung zu entfernen.

Abbildung 1: Java-Programm mit Iterator

Im obigen Programm gibt es eine ArrayList namens list. Die add-Methode hilft beim Hinzufügen von Elementen zur Liste. Zeile 14 druckt die Elemente in der Liste. Itr ist vom Typ Iterator, und iterator() gibt den Iterator an den Anfang der Sammlung zurück. Die while-Schleife ruft die Methode hasNext() auf. Es gibt true zurück, wenn die Auflistung mehr Elemente enthält. Es gibt false zurück, wenn keine weiteren Elemente zu durchlaufen sind. Innerhalb der Schleife hilft die Methode next(), jedes Element in der Sammlung zu erhalten. Ebenso liest itr die Elemente in der Sammlung und zeigt sie an.

In Zeile 21 entfernt der itr das letzte Element, nämlich drei, aus der Sammlung. Schließlich werden die restlichen Elemente, eins und zwei, auf der Konsole angezeigt.

Was ist Aufzählung?

Enumeration ist eine Schnittstelle, die es ermöglicht, jeweils ein Element in einer Sammlung von Objekten abzurufen. Die Aufzählung gilt für neuen Code als veraltet. Es wird jedoch von mehreren Methoden verwendet, die von den Legacy-Klassen wie Vector definiert werden.

Abbildung 2: Java-Programm mit Enumeration

Im obigen Programm ist days vom Typ Enumeration. Der dayNames ist ein Objekt von Vector. Die add-Methode hilft beim Hinzufügen von Elementen zum Vector. Die while-Schleife hilft beim Durchlaufen der Elemente. hasMoreElements() gibt true zurück, wenn mehr Elemente zu erhalten sind. Andererseits wird false zurückgegeben, wenn alle Elemente aufgezählt wurden. Darüber hinaus hilft die nextElement()-Methode innerhalb der while-Schleife, das nächste Objekt in der Enumeration als generische Objektreferenz zurückzugeben.

Unterschied zwischen Iterator und Enumeration

Definition

Iterator ist eine Schnittstelle im Collection-Framework von Java, die das Durchlaufen einer Collection ermöglicht. Enumeration ist jedoch eine Schnittstelle, die aus Methoden besteht, die es ermöglichen, die Elemente in einer Sammlung von Objekten aufzuzählen.

Zugriff

Es ist möglich, Elemente mit Iterator zu lesen und zu entfernen, während es nur mit Enumerator möglich ist, die Elemente zu lesen.

Methoden

Iterator stellt die Methoden hasNext(), next() und remove() bereit, während Enumeration Methoden hasMoreElements() und nextElement() bereitstellt.

Alternativen

Außerdem kann der Programmierer ListIterator anstelle von Iterator verwenden, während der Programmierer Iterator anstelle von Enumeration verwenden kann.

Abschluss

Kurz gesagt, sowohl Iterator als auch Enumeration sind Schnittstellen in Java, die beim Durchlaufen von Elementen einer Sammlung helfen. Der Hauptunterschied zwischen Iterator und Enumeration besteht darin, dass es möglich ist, Elemente einer Collection mit einem Iterator zu lesen und zu entfernen, während es nur möglich ist, die Elemente einer Collection mit einer Enumeration zu lesen. Darüber hinaus kann der Programmierer auch den ListIterator verwenden, um die Elemente einer Sammlung durchzugehen.

Verweise:

1. „Java Iterator-Schnittstelle – Javatpoint.“ www.javatpoint.com, hier verfügbar. 2.Tutorialspoint.com. „Java Die Aufzählungsschnittstelle.“ www.tutorialspoint.com, hier verfügbar.

Was ist der Unterschied zwischen Iterator und Enumeration?