Usando o Dictionary

Usando Dictionary c#

Existem muitas formas de armazenar e recuperar dados no c#. Muitas vezes recorremos a arrays, listas, datatables e dentre outros. Porêm, algumas dessas alternativas, como o array, deixa a desejar na performance.

Neste artigo vou mostrar um pouco do Dictionary, uma classe contida no System.Collections.Generic, que possui uma alta performance mesmo quando utilizada com grandes quantidades de dados.

Definição - Dictionary: Representa um coleção de chaves e valores.

[csharp title="Inicializando o objeto com valores pré-definidos"]
public Dictionary Frutas = new Dictionary()
{
{0, Laranja },
{1, Maçã },
{2, Goiaba }
};
[/csharp]

 

[csharp title="Adicionando novos intens em tempo de execução"]
Frutas.Add(3, Pêssego );
Frutas.Add(4, Melancia );
Frutas.Add(5, Abacaxi );
[/csharp]

 

[csharp title="Removendo um item em tempo de execução"]
Frutas.Remove(3);//Remove o Pêssego
[/csharp]

 

[csharp title="Recuperando um valor de um item em tempo de execução"]
//Uma opção
string minhaFruta = Frutas[1];//Retorna a Melancia

//Outra opção - usando linq e lambda
string outraFruta = Frutas.First(f => f.Key == 2).Value;
[/csharp]

 

[csharp title="Populando um dropdownlist através de um Dictionary"]
DropDownListFrutas.DataSource = Frutas;
DropDownListFrutas.DataValueField = Key ;
DropDownListFrutas.DataTextField = Value ;
DropDownListFrutas.DataBind();
[/csharp]

Como vocês viram, o dictionary trabalha com uma chave e um valor. Sendo assim, ele não aceita valores repetidos para a chave.