Coleção do Tipo HashSet
A classe HashSet<T> é uma coleção definida que implementa a interface ICollection e a interface genéricaICollection<T> .
Começando com o .NET Framework versão 4, o HashSet<T> classe implementa o ISet<T> classe.
Definir coleções
Na matemática, um conjunto é uma coleção de objetos distintos normalmente definidos por uma regra que determina se um elemento é um membro de um conjunto específico. Por exemplo, um conjunto pode ser definido para conter a "todos os os números ímpares entre 1 e 21" ou os números "1, 3, 5 e 7".
A classe HashSet
A classe HashSet<T> baseia-se no modelo de conjuntos matemáticos e fornece operações de conjuntos de alto desempenho semelhantes a acessar as chaves das coleções Dictionary<TKey, TValue> ou Hashtable. Em termos simples, a classe HashSet<T> pode ser considerada como uma coleção Dictionary<TKey, TValue> sem valores.
Uma coleção HashSet<T> não está classificada e não pode conter elementos duplicados. Se ordem ou elemento de duplicação é mais importante que o desempenho de seu aplicativo, considere o uso da classe List<T> juntamente com o método Sort.
HashSet<T> fornece muitos conjuntos de operações matemáticas, como conjuntos de adição (uniões) e de subtração. A tabela a seguir lista as operações HashSet<T> fornecidas e seus equivalentes matemáticos.
Operação HashSet (De T) |
Equivalente Matemático |
---|---|
União ou conjunto de adição |
|
Interseção |
|
Conjunto de subtração |
|
Diferença simétrica |
Além disso, para as operações de conjunto listadas, a classe HashSet<T> também fornece métodos para determinar conjuntos de igualdade, sobreposição de conjuntos, e se um conjunto é um subconjunto ou superconjunto de outro conjunto.