Dictionary<,>

2008-11-09

O tipo Dictionary do framework .NET é uma classe muito útil para armazenar listas de objects que queremos que sejam identificáveis por uma chave. O tipo pertence ao namespace System.Collections.Generic da framework e partilha alguns métodos das listas genéricas.

O tipo Dictionary, para cada item, contem dois valores – TKey, que é uma chave e que pode ser de diversos tipos (string, int, ..) e o TValue que é o valor para para a chave. Cada chave tem de ser único, naturalmente para que o registo possa ser referenciado correctamente. A chave não pode ser nulo, mas o valor pode. O Dictionary implementa ainda uma série de interfaces, nomeadamente o IDictionary, ICollection e IEnumerable, da qual podemos aproveitar as potencialidades.

Tive de utilizar esta class hoje, no desenvolvimento de uma class, e a verdade é que simplficou muito o trabalho que estava a fazer. De uma forma simplificada, estava a tentar extrair palavras de um texto, e que estavam entre um conjunto de palavras chave. Tratava-se de dados pessoais em currículos, e onde eu queria extrair, por exemplo, o nome, a data de nascimento, a nacionalidade, o sexo, etc… Então após a extracção do conjunto de palavras, armazenei-os num Dictionary<string, string> – a chave era a string da palavra chave que precedia o texto que procurava, e o valor era o texto que procurava.

Depois de instanciar o Dictionary:

Com estas características, quando é necessário um par chave-valor, o Dictionary é uma óptima escolha, como também é exemplo da potencialidade do framework .NET.