Compartir a través de


Tipo de colección HashSet

Actualización: noviembre 2007

La clase HashSet<T> es una colección de conjunto que implementa la interfaz ICollection y la interfaz genérica ICollection<T>.

Colecciones de conjunto

En matemáticas, un conjunto es una colección de objetos distintos que, normalmente, está definido por una regla que determina si un elemento es miembro de un conjunto determinado. Por ejemplo, se puede definir un conjunto que contenga "todos los números impares entre 1 y 21" o los números "1, 3, 5 y 7".

La clase HashSet

La clase HashSet<T> se basa en el modelo de conjuntos matemáticos y proporciona operaciones de conjuntos de gran rendimiento similares a las de acceso a las claves de las colecciones Dictionary<TKey, TValue> o Hashtable. En términos sencillos, se podría hablar de la clase HashSet<T> como una colección Dictionary<TKey, TValue> sin valores.

Una colección HashSet<T> no está ordenada y no puede contener elementos duplicados. Si el orden o la duplicación de elementos es más importante que el rendimiento para la aplicación, considere la posibilidad de utilizar la clase List<T> junto con el método Sort.

HashSet<T> proporciona muchas operaciones matemáticas de conjuntos, como la suma de conjuntos (uniones) y la resta de conjuntos. La tabla siguiente enumera las operaciones HashSet<T> proporcionadas y sus equivalentes matemáticos.

Operación HashSet(Of T)

Equivalente matemático

UnionWith

Unión o suma de conjuntos

IntersectWith

Intersección

ExceptWith

Resta de conjuntos

SymmetricExceptWith

Diferencia simétrica

Además de las operaciones de conjuntos enumeradas, la clase HashSet<T> también proporciona métodos para determinar la igualdad de conjuntos, la superposición de conjuntos y si un conjunto es un subconjunto o supraconjunto de otro conjunto.

Vea también

Conceptos

Operaciones HashSet y Set de LINQ

Referencia

HashSet<T>

Otros recursos

Tipos de colección utilizados normalmente