Empfohlen, 2024

Tipp Der Redaktion

Unterschied zwischen Iterator und ListIterator in Java

Der Iterator und der ListIterator sind die zwei der drei Java- Cursor . Sowohl Iterator als auch ListIterator werden vom Collection Framework im Paket J ava.Util definiert. ListIterator ist die untergeordnete Schnittstelle der Iterator-Schnittstelle. Der Hauptunterschied zwischen Iterator und ListIterator besteht darin, dass Iterator die Elemente in der Auflistung nur in Vorwärtsrichtung durchlaufen kann, wohingegen der ListIterator die Elemente in einer Auflistung sowohl in Vorwärts- als auch in Rückwärtsrichtung durchlaufen kann.

Lassen Sie uns einige Unterschiede zwischen Iterator und ListIterator anhand der unten gezeigten Vergleichstabelle diskutieren.

Vergleichstabelle

Basis zum VergleichIteratorListIterator
BasicIterator kann die Elemente in einer Sammlung nur in Vorwärtsrichtung durchlaufen.ListIterator kann die Elemente in einer Sammlung sowohl vorwärts als auch rückwärts durchlaufen.
HinzufügenIterator kann keiner Sammlung Elemente hinzufügen.ListIteror kann einer Collection Elemente hinzufügen.
ÄndernIterator kann die Elemente in einer Sammlung nicht ändern.ListIterator kann die Elemente in einer Auflistung mit set () ändern.
TraverseIterator kann Map, List und Set durchqueren.ListIterator kann nur List-Objekte durchlaufen.
IndexIterator hat keine Methode, um einen Index des Elements in einer Auflistung zu erhalten.Mit ListIterator können Sie einen Index des Elements in einer Auflistung abrufen.

Definition von Iterator

Iterator ist eine Schnittstelle in einem Collection Framework . Es wird verwendet, um die Sammlungselemente zu durchlaufen. Mit Iterator können Sie jedes Element in der Auflistung nacheinander durchlaufen, Elemente aus der Auflistung abrufen oder Elemente aus der Auflistung entfernen . Sie können feststellen, dass Sie mit Iterator keine Elemente in einer Sammlung ändern können.

Iterator verfügt über eine Methode iterator (), die den Iterator an den Anfang der Auflistung zurückgibt. Wenn Sie einen Iterator am Anfang einer Auflistung erhalten, erstellen Sie eine Schleife, die die Elemente in der Auflistung durchquert, die hasNext () jedes Mal aufruft, wenn die Schleife durchläuft. HasNext () Wenn true zurückgegeben wird, bedeutet dies, dass das nächste Element in der Auflistung vorhanden ist. Wenn es false zurückgibt, bedeutet dies, dass alle Elemente durchlaufen werden. Innerhalb der Schleife können Sie jedes Element in einer Collection mit next () abrufen . Die next () -Methode gibt das nächste Element der Auflistung zurück.

Nachteil:

Mit Iterator können Sie eine Sammlung nur in Vorwärtsrichtung durchlaufen.
Mit Iterator können Sie die Elemente in einer Auflistung nicht bearbeiten oder ändern.

Definition von ListIterator

ListIterator ist eine Schnittstelle in einem Collection-Framework und erweitert die Iterator- Schnittstelle. Mit ListIterator können Sie die Elemente der Auflistung sowohl vorwärts als auch rückwärts durchlaufen. Sie können auch jedes Element in der Sammlung hinzufügen, entfernen oder ändern . Kurz gesagt, wir können sagen, dass es die Nachteile von Iterator beseitigt.

Die Methoden von ListIterator sind wie folgt:

hasNext () : Wenn true zurückgegeben wird, werden mehr Elemente in einer Auflistung angezeigt .
next () : Gibt die nächsten Elemente der Liste zurück.
nextIndex () : Gibt den Index der nächsten Elemente in der Liste zurück.
hasPrevious () : Gibt "true" zurück, wenn sich Elemente in umgekehrter Richtung in einer Auflistung befinden.
previous () : Gibt das vorherige Element in einer Auflistung zurück.
previousIndex () : Gibt den Index des vorherigen Elements in einer Auflistung zurück.
remove () : Löscht das Element aus einer Sammlung.
set () : Ändert das Element in einer Auflistung.
add () : Fügt das neue Element einer Auflistung hinzu.

Hauptunterschiede zwischen Iterator und ListIterator

  1. Der grundlegende Unterschied zwischen Iterator und ListIterator besteht darin, dass Iterator als Cursor nur Elemente in einer Sammlung nur in Vorwärtsrichtung durchlaufen kann. Andererseits kann der ListIterator sowohl in Vorwärts- als auch in Rückwärtsrichtung verfahren.
  2. Mit dem Iterator können Sie keiner Sammlung ein Element hinzufügen. Mit ListIterator können Sie jedoch einer Sammlung Elemente hinzufügen.
  3. Mit Iterator können Sie ein Element in einer Auflistung nicht entfernen, da Sie ein Element mit ListIterator aus einer Auflistung entfernen können.
  4. Mit Iterator können Sie alle Sammlungen wie Karte, Liste, Satz durchqueren. Mit ListIteror können Sie jedoch nur die Liste der implementierten Objekte durchlaufen.
  5. Mit Iterator können Sie einen Index eines Elements abrufen. Da List jedoch sequenziell und indexbasiert ist, können Sie mit ListIterator einen Index eines Elements abrufen.

Fazit:

Sie können ListIterator verwenden, wenn Sie ein List-Objekt insbesondere vorwärts und rückwärts durchlaufen müssen. Andernfalls können Sie Iterator verwenden, da er alle Typenauflistungsobjekte unterstützt.

Top