System.Collections.Generic Namespace

Contém interfaces e classes que definem coleções genéricas, que permitem aos usuários criar coleções fortemente tipdas que fornecem melhor segurança de tipo e desempenho do que coleções fortemente tipada não genéricas.

Classes

CollectionExtensions

Fornece métodos de extensão para coleções genéricas.

Comparer<T>

Fornece uma classe base para implementações do IComparer<T> interface genérica.

Dictionary<TKey,TValue>.KeyCollection

Representa a coleção de chaves em um Dictionary<TKey,TValue>. Essa classe não pode ser herdada.

Dictionary<TKey,TValue>.ValueCollection

Representa a coleção de valores em um Dictionary<TKey,TValue>. Essa classe não pode ser herdada.

Dictionary<TKey,TValue>

Representa uma coleção de chaves e valores.

EqualityComparer<T>

Fornece uma classe base para implementações do IEqualityComparer<T> interface genérica.

HashSet<T>

Representa um conjunto de valores.

KeyedByTypeCollection<TItem>

Fornece uma coleção cujos itens são tipos que servem como chaves.

KeyNotFoundException

A exceção gerada quando a chave especificada para acessar um elemento em uma coleção não corresponde a nenhuma chave na coleção.

KeyValuePair

Cria instâncias do struct KeyValuePair<TKey,TValue>.

LinkedList<T>

Representa uma lista duplamente vinculada.

LinkedListNode<T>

Representa um nó em um LinkedList<T>. Essa classe não pode ser herdada.

List<T>

Representa uma lista fortemente tipada de objetos que podem ser acessados pelo índice. Fornece métodos para pesquisar, classificar e manipular listas.

OrderedDictionary<TKey,TValue>.KeyCollection

Representa a coleção de chaves em um OrderedDictionary<TKey,TValue>.

OrderedDictionary<TKey,TValue>.ValueCollection

Representa a coleção de valores em um OrderedDictionary<TKey,TValue>.

OrderedDictionary<TKey,TValue>

Representa uma coleção de pares chave/valor que são acessíveis pela chave ou índice.

PriorityQueue<TElement,TPriority>.UnorderedItemsCollection

Enumera o conteúdo de um PriorityQueue<TElement,TPriority>, sem nenhuma garantia de ordenação.

PriorityQueue<TElement,TPriority>

Representa uma coleção de itens que têm um valor e uma prioridade. Na dequeue, o item com o valor de prioridade mais baixo é removido.

Queue<T>

Representa uma coleção inicial de objetos.

ReferenceEqualityComparer

Um IEqualityComparer<T> que usa a igualdade de referência (ReferenceEquals(Object, Object)) em vez de igualdade de valor (Equals(Object)) ao comparar duas instâncias de objeto.

SortedDictionary<TKey,TValue>.KeyCollection

Representa a coleção de chaves em um SortedDictionary<TKey,TValue>. Essa classe não pode ser herdada.

SortedDictionary<TKey,TValue>.ValueCollection

Representa a coleção de valores em um SortedDictionary<TKey,TValue>. Essa classe não pode ser herdada.

SortedDictionary<TKey,TValue>

Representa uma coleção de pares chave/valor que são classificados na chave.

SortedList<TKey,TValue>

Representa uma coleção de pares chave/valor que são classificados por chave com base na implementação de IComparer<T> associada.

SortedSet<T>

Representa uma coleção de objetos que é mantida em ordem classificada.

Stack<T>

Representa uma coleção LIFO (last-in-first-out) de tamanho variável de instâncias do mesmo tipo especificado.

SynchronizedCollection<T>

Fornece uma coleção thread-safe que contém objetos de um tipo especificado pelo parâmetro genérico como elementos.

SynchronizedKeyedCollection<K,T>

Fornece uma coleção thread-safe que contém objetos de um tipo especificado por um parâmetro genérico e que são agrupados por chaves.

SynchronizedReadOnlyCollection<T>

Fornece uma coleção thread-safe, somente leitura, que contém objetos de um tipo especificado pelo parâmetro genérico como elementos.

Estruturas

Dictionary<TKey,TValue>.AlternateLookup<TAlternateKey>

Fornece um tipo que pode ser usado para executar operações em um Dictionary<TKey,TValue> usando um TAlternateKey como uma chave em vez de um TKey.

Dictionary<TKey,TValue>.Enumerator

Enumera os elementos de um Dictionary<TKey,TValue>.

Dictionary<TKey,TValue>.KeyCollection.Enumerator

Enumera os elementos de um Dictionary<TKey,TValue>.KeyCollection.

Dictionary<TKey,TValue>.ValueCollection.Enumerator

Enumera os elementos de um Dictionary<TKey,TValue>.ValueCollection.

HashSet<T>.AlternateLookup<TAlternate>

Fornece um tipo que pode ser usado para executar operações em um HashSet<T> usando um TAlternate em vez de um T.

HashSet<T>.Enumerator

Enumera os elementos de um objeto HashSet<T>.

KeyValuePair<TKey,TValue>

Define um par chave/valor que pode ser definido ou recuperado.

LinkedList<T>.Enumerator

Enumera os elementos de um LinkedList<T>.

List<T>.Enumerator

Enumera os elementos de um List<T>.

OrderedDictionary<TKey,TValue>.Enumerator

Enumera os elementos de um OrderedDictionary<TKey,TValue>.

OrderedDictionary<TKey,TValue>.KeyCollection.Enumerator

Enumera os elementos de um OrderedDictionary<TKey,TValue>.KeyCollection.

OrderedDictionary<TKey,TValue>.ValueCollection.Enumerator

Enumera os elementos de um OrderedDictionary<TKey,TValue>.ValueCollection.

PriorityQueue<TElement,TPriority>.UnorderedItemsCollection.Enumerator

Enumera o elemento e os pares de prioridade de um PriorityQueue<TElement,TPriority>, sem nenhuma garantia de ordenação.

Queue<T>.Enumerator

Enumera os elementos de um Queue<T>.

SortedDictionary<TKey,TValue>.Enumerator

Enumera os elementos de um SortedDictionary<TKey,TValue>.

SortedDictionary<TKey,TValue>.KeyCollection.Enumerator

Enumera os elementos de um SortedDictionary<TKey,TValue>.KeyCollection.

SortedDictionary<TKey,TValue>.ValueCollection.Enumerator

Enumera os elementos de um SortedDictionary<TKey,TValue>.ValueCollection.

SortedSet<T>.Enumerator

Enumera os elementos de um objeto SortedSet<T>.

Stack<T>.Enumerator

Enumera os elementos de um Stack<T>.

Interfaces

IAlternateEqualityComparer<TAlternate,T>

Implementado por um IEqualityComparer<T> para dar suporte à comparação de uma instância de TAlternate com uma instância de T.

IAsyncEnumerable<T>

Expõe um enumerador que fornece iteração assíncrona sobre valores de um tipo especificado.

IAsyncEnumerator<T>

Dá suporte a uma iteração assíncrona simples em uma coleção genérica.

ICollection<T>

Define métodos para manipular coleções genéricas.

IComparer<T>

Define um método que um tipo implementa para comparar dois objetos.

IDictionary<TKey,TValue>

Representa uma coleção genérica de pares chave/valor.

IEnumerable<T>

Expõe o enumerador, que dá suporte a uma iteração simples em uma coleção de um tipo especificado.

IEnumerator<T>

Dá suporte a uma iteração simples em uma coleção genérica.

IEqualityComparer<T>

Define métodos para dar suporte à comparação de objetos para igualdade.

IList<T>

Representa uma coleção de objetos que podem ser acessados individualmente pelo índice.

IReadOnlyCollection<T>

Representa uma coleção fortemente tipada e somente leitura de elementos.

IReadOnlyDictionary<TKey,TValue>

Representa uma coleção genérica somente leitura de pares chave/valor.

IReadOnlyList<T>

Representa uma coleção somente leitura de elementos que podem ser acessados pelo índice.

IReadOnlySet<T>

Fornece uma abstração somente leitura de um conjunto.

ISet<T>

Fornece a interface base para a abstração de conjuntos.

Comentários

Muitos dos tipos de coleção genérica são analógicos diretos de tipos não genéricos. Dictionary<TKey,TValue> é uma versão genérica do Hashtable; ele usa a estrutura genérica KeyValuePair<TKey,TValue> para enumeração em vez de DictionaryEntry. List<T> é uma versão genérica do ArrayList. Há classes Queue<T> e Stack<T> genéricas que correspondem às versões não genéricas. Há versões genéricas e não genéricas de SortedList<TKey,TValue>. Ambas as versões são híbridas de um dicionário e uma lista. A classe SortedDictionary<TKey,TValue> genérica é um dicionário puro e não tem nenhum equivalente não genérico. A classe LinkedList<T> genérica é uma lista vinculada verdadeira e não tem nenhum equivalente não genérico.

Confira também