ArrayList im Vergleich zu HashSet

HashSet und ArrayList gehören zu den wichtigsten Klassen im Java Collection Framework. Im Folgenden sind einige Unterschiede zwischen HashSet und ArrayList aufgeführt.

Implementierung:

Der Hauptunterschied zwischen ArrayList und HashSet besteht darin, dass ArrayList die Implementierung der List-Schnittstelle ist, während HashSet die Implementierung der Set.

Internal implementation

ArrayList verwendet ein Array zum Speichern seiner Elemente.
HashSet verwendet eine Hashmap für seine Implementierung.

Die Reihenfolge der Elemente

ArrayList behält die Reihenfolge der Elemente bei, aus denen sie eingefügt werden.
HashSet behält die Reihenfolge der Elemente nicht bei.

Duplication

ArrayList erlaubt doppelte Werte.
HashSet erlaubt keine doppelten Werte.

Performance
ArrayList verwendet einen Index, um die Leistung zu verbessern, indem die get(index)-Methode aufgerufen wird, um ein Element abzurufen, und remove(index), um ein Element zu entfernen.
HashSet ist vollständig objektbasiert und bietet keine get.
Null object

In ArrayList, Jedes Null-Element ist erlaubt.
HashSet erlaubt nur einen Nullwert.


References: