logo

Diccionari C# amb exemples

En C#, Dictionary és una col·lecció genèrica que s'utilitza generalment per emmagatzemar parells clau/valor. El funcionament del Diccionari és bastant semblant al de la taula hash no genèrica. L'avantatge de Dictionary és que és de tipus genèric. El diccionari es defineix a l'espai de noms System.Collections.Generic. És de naturalesa dinàmica, vol dir que la mida del diccionari augmenta segons la necessitat. Punts importants:

  • La classe Diccionari implementa el
    • IDiccionari Interfície
    • IReadOnlyCollection Interfície
    • IReadOnlyDictionary Interfície
    • IDiccionari Interfície
  • Al diccionari, la clau no pot ser nul·la, però el valor sí.
  • Al diccionari, la clau ha de ser única. Les claus duplicades no es permeten si intenteu utilitzar una clau duplicada, llavors el compilador llançarà una excepció.
  • Al Diccionari, només podeu emmagatzemar els mateixos tipus d'elements.
  • La capacitat d'un diccionari és el nombre d'elements que pot contenir el diccionari.

Com crear el diccionari?

La classe de diccionari té 7 constructors que s'utilitzen per crear el Diccionari, aquí només fem servir el constructor Dictionary() i si voleu obtenir més informació sobre els constructors, consulteu C# | Classe de diccionari . Diccionari(): Aquest constructor s'utilitza per crear una instància de la classe Dictionary que està buida, té la capacitat inicial predeterminada i utilitza el comparador d'igualtat per defecte per al tipus de clau de la manera següent: Pas 1: Inclou l'espai de noms System.Collections.Generic al teu programa amb l'ajuda de la paraula clau. Sintaxi:



using System.Collections.Generic;>

Pas 2: Creeu un diccionari amb la classe de diccionari tal com es mostra a continuació:

java convertir cadena a enter
Dictionary dictionary_name = new Dictionary();>

Pas 3: Si voleu afegir elements al vostre diccionari, feu servir el mètode Add() per afegir parells clau/valor al vostre diccionari. I també podeu afegir el parell clau/valor al diccionari sense utilitzar el mètode Add. Com es mostra a l'exemple següent. Pas 4: S'accedeix al parell clau/valor del Diccionari mitjançant tres diferents maneres:

    bucle for: podeu utilitzar bucle for per accedir als parells clau/valor del diccionari. Exemple:

CSharp








for>(>int> x=0; x { Console.WriteLine('{0} and {1}', My_dict1.Keys.ElementAt(x), My_dict1[ My_dict1.Keys.ElementAt(x)]); }>

>

>

    Ús de l'índex: podeu accedir al parell clau/valor individual del diccionari mitjançant el seu valor d'índex. Aquí, només heu d'especificar la clau a l'índex per obtenir el valor del diccionari donat, sense necessitat d'especificar l'índex. L'indexador sempre pren la clau com a paràmetre, si la clau donada no està disponible al diccionari, dóna KeyNotFoundException . Exemple:

CSharp

expressió de regressió en java




Console.WriteLine('Value>is>:{0}', My_dicti[1123]);> Console.WriteLine('Value>is>:{0}', My_dicti[1125]);>

>

>

    bucle foreach: podeu utilitzar el bucle foreach per accedir als parells clau/valor del diccionari. Com es mostra a l'exemple següent, accedim al diccionari mitjançant un bucle foreach.

Exemple:

CSharp




escaneig de l'escàner java

// 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>>El meu_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>>>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>>My_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);> >}> >}> }>

>

>

Sortida:

1123 and Welcome 1124 and to 1125 and techcodeview.com a.1 and Dog a.2 and Cat a.3 and Pig>

Com eliminar elements del diccionari?

Al Diccionari, podeu eliminar elements del Diccionari. La classe de diccionari proporciona dos mètodes diferents per eliminar elements i els mètodes són:

  • Clar : Aquest mètode elimina totes les claus i valors del diccionari.
  • Eliminar : Aquest mètode elimina el valor amb la clau especificada del diccionari.

Exemple:

llista doble enllaçada

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>>El meu_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>>ell>>>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>>ell>>>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);> > >}> }>

>

fitxer csv llegir java
>

Sortida:

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>

Com comprovar la disponibilitat d'elements al Diccionari?

Al Diccionari, podeu comprovar si la clau o el valor donats estan o no al diccionari especificat. La classe Diccionari proporciona dos mètodes diferents per comprovar i els mètodes són:

  • Conté la clau : Aquest mètode s'utilitza per comprovar si el Diccionari conté la clau especificada.
  • ContéValor : Aquest mètode s'utilitza per comprovar si el Diccionari conté un valor específic.

Exemple:

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>>El meu_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...!!');> >}> >}> }>

>

>

Sortida:

Key is not found...!! Value is found...!!>