.NET Framework Ottenere un valore da un dizionario


Esempio

Dato questo codice di installazione:

var dict = new Dictionary<int, string>()
{
    { 1, "First" },
    { 2, "Second" },
    { 3, "Third" }
};

Potresti voler leggere il valore per la voce con la chiave 1. Se la chiave non esiste, ottenere un valore genererà KeyNotFoundException , quindi potresti voler prima verificarlo con ContainsKey :

if (dict.ContainsKey(1))
    Console.WriteLine(dict[1]);

Questo ha uno svantaggio: cercherete nel vostro dizionario due volte (una volta per verificare l'esistenza e una per leggere il valore). Per un dizionario di grandi dimensioni questo può influire sulle prestazioni. Fortunatamente entrambe le operazioni possono essere eseguite insieme:

string value;
if (dict.TryGetValue(1, out value))
    Console.WriteLine(value);