System.Collections.Generic Namespace
Microsoft Silverlight will reach end of support after October 2021. Learn more.
The System.Collections.Generic namespace contains interfaces and classes that define generic collections, which allow users to create strongly typed collections that provide better type safety and performance than non-generic strongly typed collections.
Classes
Class | Description | |
---|---|---|
Comparer<T> | Provides a base class for implementations of the IComparer<T> generic interface. | |
Dictionary<TKey, TValue> | Represents a collection of keys and values. | |
Dictionary<TKey, TValue>.KeyCollection | Represents the collection of keys in a Dictionary<TKey, TValue>. This class cannot be inherited. | |
Dictionary<TKey, TValue>.ValueCollection | Represents the collection of values in a Dictionary<TKey, TValue>. This class cannot be inherited. | |
EqualityComparer<T> | Provides a base class for implementations of the IEqualityComparer<T> generic interface. | |
HashSet<T> | Represents a set of values. | |
KeyedByTypeCollection<TItem> | Provides a collection whose items are types that serve as keys. | |
KeyNotFoundException | The exception that is thrown when the key specified for accessing an element in a collection does not match any key in the collection. | |
LinkedList<T> | Represents a doubly linked list. | |
LinkedListNode<T> | Represents a node in a LinkedList<T>. This class cannot be inherited. | |
List<T> | Represents a strongly typed list of objects that can be accessed by index. Provides methods to search, sort, and manipulate lists. | |
Queue<T> | Represents a first-in, first-out collection of objects. | |
Stack<T> | Represents a variable size last-in-first-out (LIFO) collection of instances of the same arbitrary type. | |
SynchronizedReadOnlyCollection<T> | Provides a thread-safe, read-only collection that contains objects of a type specified by the generic parameter as elements. |
Structures
Structure | Description | |
---|---|---|
Dictionary<TKey, TValue>.Enumerator | Enumerates the elements of a Dictionary<TKey, TValue>. | |
Dictionary<TKey, TValue>.KeyCollection.Enumerator | Enumerates the elements of a Dictionary<TKey, TValue>.KeyCollection. | |
Dictionary<TKey, TValue>.ValueCollection.Enumerator | Enumerates the elements of a Dictionary<TKey, TValue>.ValueCollection. | |
HashSet<T>.Enumerator | Enumerates the elements of a HashSet<T> object. | |
KeyValuePair<TKey, TValue> | Defines a key/value pair that can be set or retrieved. | |
LinkedList<T>.Enumerator | Enumerates the elements of a LinkedList<T>. | |
List<T>.Enumerator | Enumerates the elements of a List<T>. | |
Queue<T>.Enumerator | Enumerates the elements of a Queue<T>. | |
Stack<T>.Enumerator | Enumerates the elements of a Stack<T>. |
Interfaces
Interface | Description | |
---|---|---|
ICollection<T> | Defines methods to manipulate generic collections. | |
IComparer<T> | Defines a method that a type implements to compare two objects. | |
IDictionary<TKey, TValue> | Represents a generic collection of key/value pairs. | |
IEnumerable<T> | Exposes the enumerator, which supports a simple iteration over a collection of a specified type. | |
IEnumerator<T> | Supports a simple iteration over a generic collection. | |
IEqualityComparer<T> | Defines methods to support the comparison of objects for equality. | |
IList<T> | Represents a collection of objects that can be individually accessed by index. | |
ISet<T> | Provides the base interface for the abstraction of sets. |