Export (0) Print
Expand All

Dictionary(Of TKey, TValue).ContainsKey Method

Determines whether the Dictionary(Of TKey, TValue) contains the specified key.

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

Public Function ContainsKey ( _
	key As TKey _
) As Boolean


Type: TKey

The key to locate in the Dictionary(Of TKey, TValue).

Return Value

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


IDictionary(Of TKey, TValue).ContainsKey(TKey)
IReadOnlyDictionary(Of TKey, TValue).ContainsKey(TKey)


key is Nothing.

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(Of TKey, TValue) class (openWith is the name of the Dictionary used in this example).

' 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}", _
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. 
Dim value As String = "" 
If openWith.TryGetValue("tif", value) Then
    Console.WriteLine("For key = ""tif"", value = {0}.", value)
    Console.WriteLine("Key = ""tif"" is not found.")
End If


' The default Item property throws an exception if the requested 
' key is not in the dictionary. 
    Console.WriteLine("For key = ""tif"", value = {0}.", _
    Console.WriteLine("Key = ""tif"" is not found.")
End Try

.NET Framework

Supported in: 4.6, 4.5, 4, 3.5, 3.0, 2.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

XNA Framework

Supported in: 3.0, 2.0, 1.0

Portable Class Library

Supported in: Portable Class Library

Supported in: Windows Phone 8.1

Supported in: Windows Phone Silverlight 8.1

Supported in: Windows Phone Silverlight 8
© 2015 Microsoft