System.Collections.Generic Namespace

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.

Remarks

 

Classes

TypeReason
Comparer<T>

Provides a base class for implementations of the IComparer`1 generic interface.

Dictionary<TKey,TValue>Represents a collection of key/value pairs that are organized based on the key.
Dictionary<TKey,TValue>+Enumerator

Represents a collection of keys and values.

Dictionary<TKey,TValue>+KeyCollection
Dictionary<TKey,TValue>+KeyCollection+Enumerator
Dictionary<TKey,TValue>+ValueCollection
Dictionary<TKey,TValue>+ValueCollection+Enumerator
EqualityComparer<T>

Provides a base class for implementations of the IEqualityComparer`1 generic interface.

HashSet<T>
HashSet<T>+Enumerator

Represents a set of values.

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.

IReadOnlyCollection<T>

Represents a strongly-typed, read-only collection of elements.

IReadOnlyDictionary<TKey,TValue>

Represents a generic read-only collection of key/value pairs.

IReadOnlyList<T>

Represents a read-only collection of elements that can be accessed by index.

ISet<T>

Provides the base interface for the abstraction of sets.

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.

KeyValuePair<TKey,TValue>

Defines a key/value pair that can be set or retrieved.

LinkedList<T>
LinkedList<T>+Enumerator

Represents a doubly linked list.

LinkedListNode<T>

Represents a node in a LinkedList`1. This class cannot be inherited.

List<T>Implements the IList<T> interface. The size of a List is dynamically increased as required. A List is not guaranteed to be sorted. It is the programmer's responsibility to sort the List prior to performing operations (such as BinarySearch) that require a List to be sorted. Indexing operations are required to perform in constant access time; that is, O(1).
List<T>+Enumerator

Represents a strongly typed list of objects that can be accessed by index. Provides methods to search, sort, and manipulate lists.

Queue<T>
Queue<T>+Enumerator

Represents a first-in, first-out collection of objects.

SortedDictionary<TKey,TValue>
SortedDictionary<TKey,TValue>+Enumerator

Represents a collection of key/value pairs that are sorted on the key.

SortedDictionary<TKey,TValue>+KeyCollection
SortedDictionary<TKey,TValue>+KeyCollection+Enumerator
SortedDictionary<TKey,TValue>+ValueCollection
SortedDictionary<TKey,TValue>+ValueCollection+Enumerator
SortedList<TKey,TValue>

Represents a collection of key/value pairs that are sorted by key based on the associated IComparer`1 implementation.

SortedSet<T>
SortedSet<T>+Enumerator

Represents a collection of objects that is maintained in sorted order.

Stack<T>
Stack<T>+Enumerator

Represents a variable size last-in-first-out (LIFO) collection of instances of the same arbitrary type.

SynchronizedCollection<T>

Provides a thread-safe collection that contains objects of a type specified by the generic parameter as elements.

SynchronizedKeyedCollection<K,T>

Provides a thread-safe collection that contains objects of a type specified by a generic parameter and that are grouped by keys.

SynchronizedReadOnlyCollection<T>

Provides a thread-safe, read-only collection that contains objects of a type specified by the generic parameter as elements.