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)

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

Parameters

key
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.

Implements

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

ExceptionCondition
ArgumentNullException

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}", _
        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. 
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 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

.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
Show:
© 2015 Microsoft