Dictionary<TKey,TValue>.ContainsKey(TKey) Méthode

Définition

Détermine si Dictionary<TKey,TValue> contient la clé spécifiée.

C#
public bool ContainsKey (TKey key);

Paramètres

key
TKey

Clé à rechercher dans Dictionary<TKey,TValue>.

Retours

true si Dictionary<TKey,TValue> contient un élément correspondant à la clé spécifiée ; sinon, false.

Implémente

Exceptions

key a la valeur null.

Exemples

L’exemple de code suivant montre comment utiliser la ContainsKey méthode pour tester si une clé existe avant d’appeler la Add méthode. Il montre également comment utiliser la méthode pour récupérer des TryGetValue valeurs, qui est un moyen efficace de récupérer des valeurs lorsqu’un programme essaie fréquemment des clés qui ne se trouvent pas dans le dictionnaire. Enfin, il montre le moyen le moins efficace de tester si des clés existent, en utilisant la Item[] propriété (l’indexeur en C#).

Cet exemple de code fait partie d’un exemple plus grand fourni pour la Dictionary<TKey,TValue> classe (openWith est le nom du dictionnaire utilisé dans cet exemple).

C#
// ContainsKey can be used to test keys before inserting
// them.
if (!openWith.ContainsKey("ht"))
{
    openWith.Add("ht", "hypertrm.exe");
    Console.WriteLine("Value added for key = \"ht\": {0}",
        openWith["ht"]);
}
C#
// When a program often has to try keys that turn out not to
// be in the dictionary, TryGetValue can be a more efficient
// way to retrieve values.
string value = "";
if (openWith.TryGetValue("tif", out value))
{
    Console.WriteLine("For key = \"tif\", value = {0}.", value);
}
else
{
    Console.WriteLine("Key = \"tif\" is not found.");
}
C#
// The indexer throws an exception if the requested key is
// not in the dictionary.
try
{
    Console.WriteLine("For key = \"tif\", value = {0}.",
        openWith["tif"]);
}
catch (KeyNotFoundException)
{
    Console.WriteLine("Key = \"tif\" is not found.");
}

Remarques

Cette méthode approche une opération O(1).

S’applique à

Produit Versions
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0

Voir aussi