Dictionary en C#
Los diccionarios Dictionary<TKey, TValue>se utilizan para
almacenar un par clave-valor. Es una colección genérica que se define en
el espacio de nombres System.Collection.Generic e implementa
la IDictionary<TKey, TValue>interfaz.
1.
Agregar
elementos a un diccionario C#
El constructor de clases de diccionario de C# toma un tipo de datos clave y
un tipo de datos de valor. Ambos tipos son genéricos, por lo que puede ser
cualquier tipo de datos .NET.
La siguiente clase Dictionary es una clase genérica y puede almacenar
cualquier tipo de datos. Esta clase se define en el fragmento de código
que crea un diccionario en el que tanto las claves como los valores son tipos
de cadena.
Dictionary<string, string> EmpleadoList = new Dictionary<string,
string>();
El siguiente fragmento de código agrega elementos al diccionario.
Empleadoist.Add("Mario
Durán", "Programador");
EmpleadoList.Add("Claudia
Capella", "Gerente
de Proyectos");
EmpleadoList.Add("Adrián
Martán", "Arquitecto");
EmpleadoList.Add("Pablo
Castillo", "Gerenete
de Desarrollo");
EmpleadoList.Add("Jesulando
Sosa", "VP
de Tecnología");
2.
Recuperar
elementos de un diccionario C#
El Diccionario es una colección. Podemos usar el ciclo foreach para
revisar todos los elementos y leerlos usando las propiedades de Valor de
anuncio clave.
foreach (KeyValuePair<string,
Int16> empleado in EmpleadoList)
{
Console.WriteLine("Key:
{0}, Value: {1}", empleado.Key, empleado.Value);
}
3.
Propiedades
del diccionario C#
La clase Dictionary tiene tres propiedades: Count, Keys y Values.
4.
Obtenga
la cantidad de elementos en un diccionario de C#
La propiedad Count obtiene el número de pares clave/valor en un
diccionario.
El siguiente fragmento de código muestra el número de elementos en un
diccionario.
Console
.WriteLine("Count: {0}",EmpleadoList
.Count
);
5.
Obtener
un elemento del Diccionario
La propiedad Item obtiene y establece el valor asociado con la clave
especificada.
El siguiente fragmento de código establece y obtiene el valor de un
elemento.
EmpleadoList
["Pablo Castillo"]=
20;
Int16edad
=Convert
.ToInt16(EmpleadoList
["Pablo Castillo"]);
6.
Obtenga
la colección de claves del diccionario C#
La propiedad Keys obtiene una colección que contiene las claves en el
Diccionario. Devuelve un objeto de tipo KeyCollection.
El siguiente fragmento de código lee todas las claves en un
diccionario.
Dictionary<string,
Int16>.KeyCollection keys =EmpleadoList.Keys;
foreach (string key in keys)
{
Console.WriteLine("Key:
{0}", key);
}
7.
Obtenga
la colección de valores de un diccionario C#
La propiedad Values obtiene una colección que contiene los valores en el
Diccionario. Devuelve un objeto de tipo ValueCollection.
El siguiente fragmento de código lee todos los valores en un diccionario.
Dictionary<string, Int16>.ValueCollection values
= AuthorList.Values;
foreach (Int16 val in values)
{
Console.WriteLine("Value:
{0}", val);
}
DEMOSTRACIÓN
En el siguiente fragmento de código colocaremos este condicional para ver si existe y también para remover elementos dentro de la misma