Freigeben über


HashSet-Auflistungstyp

Die HashSet<T>-Klasse ist eine Mengenauflistung, die die ICollection-Schnittstelle und die generische ICollection<T>-Schnittstelle implementiert.

Die HashSet<T>-Klasse implementiert die ISet<T>-Klasse und beginnt dabei mit .NET Framework, Version 4.

Mengenauflistungen

In der Mathematik ist eine Menge eine Sammlung unterschiedlicher Objekte, die manuell durch eine Regel definiert wird, die festlegt, ob ein Element Teil einer bestimmten Menge ist. Die Definition einer Menge kann beispielsweise lauten, dass eine Menge "alle ungeraden Zahlen zwischen 1 und 21" oder die Zahlen "1, 3, 5 und 7" enthält.

Die HashSet-Klasse

Die HashSet<T>-Klasse basiert auf dem Modell mathematischer Mengen und bietet leistungsstarke Mengenoperationen, die mit dem Zugriff auf die Schlüssel für die Dictionary<TKey, TValue>-Auflistung oder Hashtable-Auflistung zu vergleichen sind. Einfach ausgedrückt, kann die HashSet<T>-Klasse als Dictionary<TKey, TValue>-Auflistung ohne Werte betrachtet werden.

Eine HashSet<T>-Auflistung ist nicht sortiert und kann keine doppelten Elemente enthalten. Wenn für die Anwendung die Reihenfolge oder Duplizierung von Elementen wichtiger ist als die Leistung, sollten Sie die Verwendung der List<T>-Klasse zusammen mit der Sort-Methode in Betracht ziehen.

HashSet<T> stellt zahlreiche mathematische Mengenoperationen bereit, wie zum Beispiel die Mengenaddition (Vereinigungen) und Mengensubtraktion. In der folgenden Tabelle sind die verfügbaren HashSet<T>-Operationen und ihre mathematischen Entsprechungen aufgelistet.

HashSet(Of T)-Operation

Mathematische Entsprechung

UnionWith

Vereinigung oder Mengenaddition

IntersectWith

Schnittmenge

ExceptWith

Mengensubtraktion

SymmetricExceptWith

Symmetrische Differenz

Zusätzlich zu den aufgeführten Mengenoperationen stellt die HashSet<T>-Klasse auch Methoden zum Ermitteln der Mengenqualität, der Überlappung von Mengen und zur Feststellung, ob eine Menge eine unter- oder übergeordnete Menge einer anderen Menge ist, bereit.

Siehe auch

Referenz

SortedSet<T>

ISet<T>

HashSet<T>

Konzepte

HashSet- und LINQ-Mengenoperationen

Weitere Ressourcen

Häufig verwendete Auflistungstypen