Unterschied zwischen Liste und Satz

Schlüsseldifferenz - Liste vs einstellen
 

Die meisten Programmiersprachen verwenden Arrays zum Speichern eines Datensatzes desselben Typs. Ein Hauptnachteil von Arrays ist, dass die festgelegte Arraygröße nicht mehr geändert werden kann. Wenn der Programmierer Werte speichern möchte, die die Arraygröße überschreiten, sollte er ein neues Array erstellen und die vorhandenen Elemente in das neue Array kopieren. In diesen Situationen können Sammlungen verwendet werden. Mit der Unterstützung von Sammlungen können Elemente hinzugefügt, Elemente gelöscht und viele andere Operationen ausgeführt werden. In Programmiersprachen wie Java stehen verschiedene Arten von Sammlungen zur Verfügung. List und Set sind Schnittstellen der Sammlungshierarchie. Die Basisschnittstelle für andere Schnittstellen ist Collection. Das Hauptunterschied zwischen List und Set ist das List unterstützt das mehrmalige Speichern desselben Elements, während Set das mehrmalige Speichern desselben Elements nicht unterstützt. Daher erlaubt ein Set keine Vervielfältigung.

INHALT

1. Übersicht und Schlüsseldifferenz
2. Was ist Liste?
3. Was ist Set?
4. Ähnlichkeiten zwischen Liste und Satz
5. Side-by-Side-Vergleich - Liste in tabellarischer Form
6. Zusammenfassung

Was ist Liste??

Die Liste ist eine Schnittstelle, die die Collection-Schnittstelle erweitert. In der Collection-Schnittstelle gibt es eine Reihe von Methoden. Die add-Methode hilft beim Hinzufügen eines Elements. Die 'remove-Methode' besteht darin, ein Element zu entfernen. Es gibt eine 'addAll-Methode', um mehrere Elemente hinzuzufügen, während 'removeAll-Methode' die Elemente aus der Auflistung entfernt. Die include-Methode hilft dabei herauszufinden, ob ein bestimmtes Objekt in der Liste vorhanden ist oder nicht. Die 'containsAll' gibt an, ob eine Objektgruppe in der Auflistung vorhanden ist. Die Iterator-Methode wird zum Durchlaufen der Listenelemente verwendet. Da List die Collection erweitert, gehören alle Collection-Methoden zu List. Abgesehen von diesen Methoden verfügt die Liste über Methoden wie get und set. Der Programmierer kann mit der get-Methode einen Wert an einem bestimmten Index erhalten. Der Programmierer kann mit der Set-Methode einen Wert an einem bestimmten Index festlegen. Der 'indexOf' wird verwendet, um den Index eines Elements zu ermitteln.

In einer Liste können die Operationen entsprechend der Position ausgeführt werden. Der Programmierer kann das Datenelement bereitstellen, das dem Index hinzugefügt werden soll. Es wird also zu dem spezifischen Index hinzugefügt. Wenn der Programmierer keinen Index angibt, wird das Element am Ende der Liste hinzugefügt. Es behält auch die eingefügte Reihenfolge bei. Wenn Element 1 hinzugefügt wird und dann Element2 hinzugefügt wird, ist Element1 vor Element2.

Abbildung 01: Liste und Set

ArrayList, LinkedList, Vector sind einige Klassen, die List implementieren. In einer ArrayList ist der Zugriff auf ein Element schnell, das Einfügen und Löschen jedoch geringer. ArrayList ist nicht threadsicher. Der Zugriff auf dieselbe ArrayList von mehreren Threads führt möglicherweise nicht zum gleichen Ergebnis. In einer LinkedList sind die Elemente sowohl rückwärts als auch vorwärts verknüpft. Das Einfügen und Löschen von Elementen mithilfe einer LinkedList ist schneller als die ArrayList. Die LinkedList implementiert sowohl List als auch Queue. Vector ähnelt ArrayList, ist jedoch tread-sicher, da alle Methoden synchronisiert sind.

Was ist Set??

Set ist eine Schnittstelle, die die Collection-Schnittstelle erweitert. Da die Set-Schnittstelle Collection erweitert, gehören alle Methoden von Collection ebenfalls zu Set. Ein Set unterstützt keine Duplizierungswerte. Daher kann der Programmierer dasselbe Element nicht zweimal speichern. Es unterhält einen einzigartigen Satz von Elementen. Die SortedSet-Schnittstelle erweitert die Set-Schnittstelle. SortedSet verwaltet die Elemente in sortierter Reihenfolge. Die NavigableSet-Schnittstelle erweitert SortedSet. Das NavigableSet bietet Navigationsmethoden wie Unter, Boden, Decke usw.

HashSet, LinkedHashSet und TreeSet sind einige Klassen, die die Set-Schnittstelle implementieren. Das HashSet implementiert Schnittstelle setzen. Die eingefügte Reihenfolge wird nicht beibehalten. Wenn die Werte als a, x, b eingefügt werden, können sie als x, a, b gespeichert werden. Das LinkedSet behält die eingefügte Reihenfolge bei. Wenn die Elemente in der Reihenfolge a, x, b eingefügt werden, lautet die Speicherreihenfolge a, x, b. Das TreeSet implementiert Set und NavigableSet. Die Einfügungsreihenfolge wird nicht beibehalten, die Elemente werden jedoch in der sortierten Reihenfolge gespeichert. Wenn die Reihenfolge a, c, b ist, werden die Elemente als a, b, c gespeichert. Alle HashSet, LinkedHashSet und TreeSet enthalten keine doppelten Elemente.

Was sind die Ähnlichkeiten zwischen Liste und Satz?

  • Sowohl die List- als auch die Set-Schnittstelle erweitern die Collection-Schnittstelle.
  • List und Set unterstützen Vorgänge wie das Hinzufügen und Entfernen von Elementen.

Was ist der Unterschied zwischen Liste und Satz?

List vs Set

Listenschnittstelle ist die Unterschnittstelle von Collection, die Methoden enthält, um Vorgänge wie Einfügen, Löschen basierend auf dem Index auszuführen. Set Interface ist eine Unteroberfläche von Collection, die Methoden enthält, um Vorgänge wie Einfügen und Löschen von Elementen auszuführen, während die eindeutigen Elemente erhalten bleiben.
 Klassen
ArrayList, Vector und LinkedList sind Klassen, die die List-Schnittstelle implementieren. HashSet, LinkedHashSet und TreeSet sind Klassen, die die Set-Schnittstelle implementieren.
Elementverdopplung
Die Liste unterstützt die Duplizierung von Elementen. Set unterstützt keine Duplizierung von Elementen. Elemente sind einzigartig.

Zusammenfassung - Liste vs einstellen

Sammlungen werden zum dynamischen Speichern von Elementen verwendet. Programmiersprachen wie Java bieten eine Collection-Schnittstelle. List und Set sind zwei Schnittstellen, die zur Collection-Schnittstelle gehören. Beide Schnittstellen erweitern Collection. In diesem Artikel wurde der Unterschied zwischen List und Set beschrieben. Der Hauptunterschied zwischen List und Set besteht darin, dass List das mehrfache Speichern desselben Elements unterstützt, während Set nicht das gleiche Element mehrmals speichert. Set behält immer eindeutige Elemente bei.

Referenz:

1.Point, Tutorials. "Java-Sammlungen"., Tutorials Punkt, 8. Januar 2018. Hier verfügbar