Information
The topic you requested is included in another documentation set. For convenience, it's displayed below. Choose Switch to see the topic in its original location.

Dictionary<TKey, TValue>.ContainsKey Method

[ This article is for Windows Phone 8 developers. If you’re developing for Windows 10, see the latest documentation. ]

Determines whether the Dictionary<TKey, TValue> contains the specified key.

Namespace:  System.Collections.Generic
Assembly:  mscorlib (in mscorlib.dll)

public bool ContainsKey(
	TKey key
)

Parameters

key
Type: TKey
The key to locate in the Dictionary<TKey, TValue>.

Return Value

Type: System.Boolean
true if the Dictionary<TKey, TValue> contains an element with the specified key; otherwise, false.

Implements

IDictionary<TKey, TValue>.ContainsKey(TKey)
IReadOnlyDictionary<TKey, TValue>.ContainsKey(TKey)

ExceptionCondition
ArgumentNullException

key is null.

This method approaches an O(1) operation.

The following code example shows how to use the ContainsKey method to test whether a key exists prior to calling the Add method. It also shows how to use the TryGetValue method to retrieve values, which is an efficient way to retrieve values when a program frequently tries keys that are not in the dictionary. Finally, it shows the least efficient way to test whether keys exist, by using the Item property (the indexer in C#).

This code example is part of a larger example provided for the Dictionary<TKey, TValue> class.


// ContainsKey can be used to test keys before inserting 
// them.
if (!openWith.ContainsKey("ht"))
{
   openWith.Add("ht", "hypertrm.exe");
   outputBlock.Text += String.Format("Value added for key = \"ht\": {0}",
       openWith["ht"]) + "\n";
}


...


// 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))
{
   outputBlock.Text += String.Format("For key = \"tif\", value = {0}.", value) + "\n";
}
else
{
   outputBlock.Text += "Key = \"tif\" is not found." + "\n";
}


...


// The indexer throws an exception if the requested key is
// not in the dictionary.
try
{
   outputBlock.Text += String.Format("For key = \"tif\", value = {0}.",
       openWith["tif"]) + "\n";
}
catch (KeyNotFoundException)
{
   outputBlock.Text += "Key = \"tif\" is not found." + "\n";
}


Windows Phone OS

Supported in: 8.1, 8.0, 7.1, 7.0

Windows Phone

Show: