Typ kolekce HashSet
Třída HashSet<T> je množinová kolekce, která implementuje rozhraní ICollection a obecné rozhraní ICollection<T>.
Počínaje .NET Framework verze 4 třída HashSet<T> implementuje třídu ISet<T> Třída.
Množinové kolekce
Množina v matematice je sadou odlišných objektů, která je obvykle definováno pravidlem určujícím, zda je prvek členem určité množiny. Například může být množina definován tak, aby obsahovala "všechna lichá čísla mezi 1 a 21" nebo čísla "1, 3, 5 a 7".
Třída HashSet
Třída HashSet<T> je založena na modelu matematických množin a poskytuje vysoce výkonné množinové operace podobné tmě pro přístup ke klíči kolekcí Dictionary<TKey, TValue> nebo Hashtable. Jednoduše řečeno si lze třídu HashSet<T> představit jako kolekci Dictionary<TKey, TValue> bez hodnot.
Kolekce HashSet<T> není seřazena a nemůže obsahovat duplicitní prvky. Jestliže je pro aplikaci důležitější pořadí nebo duplicita prvků než výkon, zvažte použití třídy List<T> spolu s metodou Sort.
HashSet<T> poskytuje mnoho matematických množinových operací, jako je sčítání množin (sjednocení) a odčítání množin. V následující tabulce jsou uvedeny poskytované operace HashSet<T> a jejich matematické ekvivalenty.
Operace nad třídou HashSet (typu T) |
Matematický ekvivalent |
---|---|
Sjednocení nebo sčítání množin |
|
Průnik |
|
Odčítání množin |
|
Negace ekvivalence |
Kromě uvedených množinových operací třída HashSet<T> také poskytuje metody pro stanovení rovnosti množin, překrytí množin a zda je daná množina podmnožinou nebo nadmnožinou jiné množiny.