IDictionary<TKey,TValue>.ContainsKey(TKey) Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Určuje, zda obsahuje IDictionary<TKey,TValue> prvek se zadaným klíčem.
public:
bool ContainsKey(TKey key);
public bool ContainsKey (TKey key);
abstract member ContainsKey : 'Key -> bool
Public Function ContainsKey (key As TKey) As Boolean
Parametry
- key
- TKey
Klíč, který se má najít v souboru IDictionary<TKey,TValue>.
Návraty
true
pokud obsahuje IDictionary<TKey,TValue> prvek s klíčem, false
v opačném případě .
Výjimky
key
je null
.
Příklady
Následující příklad kódu ukazuje, jak použít metodu ContainsKey k otestování, zda existuje klíč před voláním Add metody. Ukazuje také, jak používat metodu TryGetValue , což může být efektivnější způsob, jak načíst hodnoty, pokud program často zkouší klíčové hodnoty, které nejsou ve slovníku. Nakonec ukazuje, jak vložit položky pomocí Item[] vlastnosti (indexer v jazyce C#).
Tento kód je součástí většího příkladu, který lze zkompilovat a spustit. Viz třída System.Collections.Generic.IDictionary<TKey,TValue>.
// 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"]);
}
// 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"]);
}
' ContainsKey can be used to test keys before inserting
' them.
If Not openWith.ContainsKey("ht") Then
openWith.Add("ht", "hypertrm.exe")
Console.WriteLine("Value added for key = ""ht"": {0}", _
openWith("ht"))
End If
// 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", value))
{
Console::WriteLine("For key = \"tif\", value = {0}.", value);
}
else
{
Console::WriteLine("Key = \"tif\" is not found.");
}
// 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.");
}
' 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.
Dim value As String = ""
If openWith.TryGetValue("tif", value) Then
Console.WriteLine("For key = ""tif"", value = {0}.", value)
Else
Console.WriteLine("Key = ""tif"" is not found.")
End If
// 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.");
}
// 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.");
}
' The default Item property throws an exception if the requested
' key is not in the dictionary.
Try
Console.WriteLine("For key = ""tif"", value = {0}.", _
openWith("tif"))
Catch
Console.WriteLine("Key = ""tif"" is not found.")
End Try
Poznámky
Implementace se mohou lišit v tom, jak určují rovnost objektů; Třída například List<T> používá , zatímco Dictionary<TKey,TValue> třída umožňuje uživateli zadat implementaciIComparer<T>, která se má použít Comparer<T>.Defaultpro porovnání klíčů.
Implementace se můžou lišit v tom, jestli umožňují key
být null
.