Aufzählung gegen Iterator
Es gibt viele Datenstrukturen, die als Sammlungen in Java fungieren, wie Vektoren, Hash -Tabellen und Klassen, die Java -Sammlungsrahmen implementieren.e. Hashmap, Hashset, ArrayList, Treeset, Treemap, LinkedList, LinkedHashMap und LinkedHashset). Es gibt zahlreiche Möglichkeiten, durch die einzelnen Elemente der Objekte in Java zu iterieren. Java bietet zwei Schnittstellen, um diese Aufgabe zu erleichtern. Aufzählung und Iterator sind zwei der in Java gefundenen Schnittstellen.Util -Paket, das Funktionen zur Aufzielung durch Sequenzen oder Objekte mit einer Reihe von Elementen bietet. Enumerator wurde in JDK 1 vorgestellt.0 und Iterator, die in JDK 1 eingeführt wurde.2 dupliziert praktisch die Funktionalität des Enumerators (innerhalb des Sammlungsrahmens).
Was ist Aufzählung?
Aufzählung ist eine öffentliche Schnittstelle in Java, die in JDK 1 eingeführt wurde.0, was die Möglichkeit bietet, durch Elementsequenzen aufzuzählen. Es wird unter Java gefunden.Util -Paket. Wenn die Enumerationsschnittstelle von einem Objekt implementiert wird, kann dieses Objekt eine Abfolge von Elementen erzeugen. Die Aufzählungsschnittstelle hat zwei Methoden. Die Methode hat MoreElements () testet, ob diese Aufzählung mehr Elemente enthält und das NextElement () das nächste Element in der Sequenz zurückgibt (falls es mindestens einen weiteren gibt). Mit anderen Worten kann der Programmierer durcheinander auf die Serie auf die einzelnen Elemente zugreifen. Um beispielsweise alle Elemente im Vektor V1 mit Enumerator zu drucken, kann der folgende Code -Snippet verwendet werden.
Aufzählung e = v1.Elemente ();
Während (e.HasMorElements ())
System.aus.println (e.NextElement ());
Enumerator kann auch verwendet werden.
Was ist Iterator?
Iterator ist eine öffentliche Schnittstelle in Java.Util -Paket, das die Durchführung von Elementen der Sammlungsobjekte ermöglicht, die das Sammlungs -Framework implementieren (z. B. ArrayList, LinkedList usw.). Dies wurde in JDK 1 eingeführt.2 und ersetzte den Enumerator innerhalb des Java -Sammlungsrahmens. Iterator hat drei Methoden. Die Methode hasNext () testet, ob in der Sammlung verbleibende Elemente vorhanden sind, und die nächste () -Methode gibt das nächste Element in der Serie zurück. Mit der Methode von REME () können Sie das aktuelle Element aus der zugrunde liegenden Sammlung entfernen. Um beispielsweise alle Elemente im Vektor V1 mit Iterator zu drucken, kann der folgende Code -Snippet verwendet werden.
Iterator I = v1.Elemente ();
Während ich.HasNext ())
System.aus.println (e.nächste());
Was ist der Unterschied zwischen Aufzählung und Iterator?
Aufzählung und Iterator sind jedoch zwei der in Java gefundenen Schnittstellen.Util -Paket, mit dem Iterating/Aufzählung durch Elemente einer Serie ihre Unterschiede haben. Tatsächlich ersetzt Iterator, das nach der Aufzählung eingeführt wurde. Im Gegensatz zur Aufzählung ist Iterator ausfallsicher. Dies bedeutet, dass gleichzeitige Modifikationen (zur zugrunde liegenden Sammlung) nicht zulässig sind, wenn Iterator verwendet wird. Dies ist in Umgebungen mit mehreren Threaden sehr nützlich. Im Falle einer gleichzeitigen Modifikation wirft das Iteratorobjekt eine ConcurrentModificationException aus. Iterator hat im Vergleich zu Enumerator kürzere Methodennamen. Darüber hinaus hat Iterator die zusätzliche Funktionalität, Elemente während der Iteration zu löschen (was mit Enumerator nicht möglich ist). Wenn also Elemente aus der Sammlung entfernt werden müssen, ist Iterator die einzige Option, die berücksichtigt werden kann.