This topic has not yet been rated - Rate this topic

HashSet Collection Type

The HashSet class is a set collection that implements the ICollection interface and the ICollection generic interface.

Starting with the .NET Framework 4, the HashSet class implements the ISet class.

In mathematics, a set is a collection of distinct objects that is usually defined by a rule that determines whether an element is a member of a particular set. For example, a set could be defined to contain "all the odd numbers between 1 and 21" or the numbers "1, 3, 5 and 7".

The HashSet class is based on the model of mathematical sets and provides high-performance set operations similar to accessing the keys of the Dictionary or Hashtable collections. In simple terms, the HashSet class can be thought of as a Dictionary collection without values.

A HashSet collection is not sorted and cannot contain duplicate elements. If order or element duplication is more important than performance for your application, consider using the List class together with the Sort method.

HashSet provides many mathematical set operations, such as set addition (unions) and set subtraction. The following table lists the provided HashSet operations and their mathematical equivalents.

HashSet(Of T) operation

Mathematical equivalent

UnionWith

Union or set addition

IntersectWith

Intersection

ExceptWith

Set subtraction

SymmetricExceptWith

Symmetric difference

In addition to the listed set operations, the HashSet class also provides methods for determining set equality, overlap of sets, and whether a set is a subset or superset of another set.

Did you find this helpful?
(1500 characters remaining)
© 2013 Microsoft. All rights reserved.