En C#, Diccionario es una colección genérica que generalmente se usa para almacenar pares clave/valor. El funcionamiento del Diccionario es bastante similar al de la tabla hash no genérica. La ventaja del Diccionario es que es de tipo genérico. El diccionario se define en el espacio de nombres System.Collections.Generic. Es de naturaleza dinámica, lo que significa que el tamaño del diccionario crece según la necesidad. Puntos importantes:
- La clase Diccionario implementa el
- Diccionario Interfaz
- Colección IReadOnly
Interfaz - Diccionario IReadOnly Interfaz
- Diccionario Interfaz
- En el Diccionario, la clave no puede ser nula, pero el valor sí puede serlo.
- En el Diccionario, la clave debe ser única. No se permiten claves duplicadas. Si intenta utilizar una clave duplicada, el compilador generará una excepción.
- En Diccionario, sólo puedes almacenar los mismos tipos de elementos.
- La capacidad de un Diccionario es la cantidad de elementos que puede contener.
¿Cómo crear el Diccionario?
La clase de diccionario tiene 7 constructores que se utilizan para crear el Diccionario, aquí solo usamos el constructor Dictionary() y si desea obtener más información sobre los constructores, consulte C# | Clase de diccionario . Diccionario(): Este constructor se usa para crear una instancia de la clase Diccionario que está vacía, tiene la capacidad inicial predeterminada y usa el comparador de igualdad predeterminado para el tipo de clave de la siguiente manera: Paso 1: Incluya el espacio de nombres System.Collections.Generic en su programa con la ayuda del uso de palabras clave. Sintaxis:
using System.Collections.Generic;>
Paso 2: Cree un diccionario usando la clase Diccionario como se muestra a continuación:
Dictionary dictionary_name = new Dictionary();>
Paso 3: Si desea agregar elementos en su Diccionario, utilice el método Add() para agregar pares clave/valor en su Diccionario. Y también puede agregar un par clave/valor en el diccionario sin usar el método Agregar. Como se muestra en el siguiente ejemplo. Etapa 4: Se accede al par clave/valor del Diccionario mediante tres diferentes caminos:
- Bucle for: puede utilizar el bucle for para acceder a los pares clave/valor del Diccionario. Ejemplo:
CSharp
for>(>int> x=0; x { Console.WriteLine('{0} and {1}', My_dict1.Keys.ElementAt(x), My_dict1[ My_dict1.Keys.ElementAt(x)]); }> |
listar java a matriz
>
El proceso de Android Acore sigue deteniéndose
>
- Uso del índice: puede acceder al par clave/valor individual del Diccionario utilizando su valor de índice. Aquí, simplemente especifica la clave en el índice para obtener el valor del diccionario dado, no es necesario especificar el índice. El indexador siempre toma la clave como parámetro; si la clave dada no está disponible en el diccionario, proporciona Excepción clave no encontrada . Ejemplo:
CSharp
Console.WriteLine('Value>is>:{0}', My_dicti[1123]);> Console.WriteLine('Value>is>:{0}', My_dicti[1125]);> |
>
>
- Bucle foreach: puede utilizar el bucle foreach para acceder a los pares clave/valor del diccionario. Como se muestra en el siguiente ejemplo, accedemos al Diccionario utilizando un bucle foreach.
Ejemplo:
CSharp
borde css
// C# program to illustrate how> // to create a dictionary> using> System;> using> System.Collections.Generic;> class> GFG {> >// Main Method> >static> public> void> Main () {> > >// Creating a dictionary> >// using Dictionary class> >Dictionary<>int>,>string>>Mi_dict1 => >new> Dictionary<>int>,>string>>();> > >// Adding key/value pairs> >// in the Dictionary> >// Using Add() method> >My_dict1.Add(1123, 'Welcome');> >My_dict1.Add(1124, 'to');> >My_dict1.Add(1125, 'techcodeview.com');> > >foreach>(KeyValuePair<>int>,>string>>ele1>in> My_dict1)> >{> >Console.WriteLine('{0} and {1}',> >ele1.Key, ele1.Value);> >}> >Console.WriteLine();> > >// Creating another dictionary> >// using Dictionary class> >// adding key/value pairs without> >// using Add method> >Dictionary<>string>,>string>>Mi_dict2 => >new> Dictionary<>string>,>string>>(){> >{'a.1', 'Dog'},> >{'a.2', 'Cat'},> >{'a.3', 'Pig'} };> > >foreach>(KeyValuePair<>string>,>string>>ele2>>in> My_dict2)> >{> >Console.WriteLine('{0} and {1}', ele2.Key, ele2.Value);> >}> >}> }> |
>
>Producción:
1123 and Welcome 1124 and to 1125 and techcodeview.com a.1 and Dog a.2 and Cat a.3 and Pig>
¿Cómo eliminar elementos del Diccionario?
En Diccionario, puede eliminar elementos del Diccionario. La clase Diccionario proporciona dos métodos diferentes para eliminar elementos y los métodos son:
vikas divyakirti
- Claro : Este método elimina todas las claves y valores del Diccionario.
- Eliminar : Este método elimina el valor con la clave especificada del Diccionario.
Ejemplo:
CSharp
// C# program to illustrate how> // remove key/value pairs from> // the dictionary> using> System;> using> System.Collections.Generic;> class> GFG {> >// Main Method> >static> public> void> Main() {> > >// Creating a dictionary> >// using Dictionary class> >Dictionary<>int>,>string>>Mi_dict => >new> Dictionary<>int>,>string>>();> > >// Adding key/value pairs in the> >// Dictionary Using Add() method> >My_dict.Add(1123, 'Welcome');> >My_dict.Add(1124, 'to');> >My_dict.Add(1125, 'techcodeview.com');> > >// Before Remove() method> >foreach>(KeyValuePair<>int>,>string>>él>in> My_dict)> >{> >Console.WriteLine('{0} and {1}',> >ele.Key, ele.Value);> >}> >Console.WriteLine();> > >// Using Remove() method> >My_dict.Remove(1123);> > >// After Remove() method> >foreach>(KeyValuePair<>int>,>string>>él>in> My_dict)> >{> >Console.WriteLine('{0} and {1}',> >ele.Key, ele.Value);> >}> >Console.WriteLine();> > > >// Using Clear() method> >My_dict.Clear();> > >Console.WriteLine('Total number of key/value '+> >'pairs present>in> My_dict:{0}', My_dict.Count);> > >}> }> |
>
memoria virtual
>Producción:
1123 and Welcome 1124 and to 1125 and techcodeview.com 1124 and to 1125 and techcodeview.com Total number of key/value pairs present in My_dict:0>
¿Cómo comprobar la disponibilidad de elementos en el Diccionario?
En Diccionario, puede verificar si la clave o el valor dado está presente o no en el diccionario especificado. La clase Diccionario proporciona dos métodos diferentes para verificar y los métodos son:
- Contiene clave : Este método se utiliza para comprobar si el Diccionario contiene la clave especificada.
- Contiene valor : Este método se utiliza para comprobar si el Diccionario contiene un valor específico.
Ejemplo:
CSharp
// C# program to illustrate how> // to check the given key or> // value present in the dictionary> // or not> using> System;> using> System.Collections.Generic;> class> GFG {> >// Main Method> >static> public> void> Main () {> > >// Creating a dictionary> >// using Dictionary class> >Dictionary<>int>,>string>>Mi_dict => >new> Dictionary<>int>,>string>>();> > >// Adding key/value pairs in the> >// Dictionary Using Add() method> >My_dict.Add(1123, 'Welcome');> >My_dict.Add(1124, 'to');> >My_dict.Add(1125, 'techcodeview.com');> > >// Using ContainsKey() method to check> >// the specified key is present or not> >if> (My_dict.ContainsKey(1122)==>true>)> >{> >Console.WriteLine('Key>is> found...!!');> >}> >else> >{> >Console.WriteLine('Key>is> not found...!!');> >}> > >// Using ContainsValue() method to check> >// the specified value is present or not> >if> (My_dict.ContainsValue('techcodeview.com')==>true>)> >{> >Console.WriteLine('Value>is> found...!!');> >}> >else> >{> >Console.WriteLine('Value>is> not found...!!');> >}> >}> }> |
>
>Producción:
Key is not found...!! Value is found...!!>