SortedList<TKey,TValue>.ContainsKey(TKey) 方法
定义
确定 SortedList<TKey,TValue> 是否包含特定键。Determines whether the SortedList<TKey,TValue> contains a specific key.
public:
virtual bool ContainsKey(TKey key);
public bool ContainsKey (TKey key);
abstract member ContainsKey : 'Key -> bool
override this.ContainsKey : 'Key -> bool
Public Function ContainsKey (key As TKey) As Boolean
参数
- key
- TKey
要在 SortedList<TKey,TValue> 中定位的键。The key to locate in the SortedList<TKey,TValue>.
返回
如果 true
包含具有指定键的元素,则为 SortedList<TKey,TValue>;否则为 false
。true
if the SortedList<TKey,TValue> contains an element with the specified key; otherwise, false
.
实现
例外
key
为 null
。key
is null
.
示例
下面的代码示例演示如何使用 ContainsKey 方法来测试在调用方法之前是否存在某个键 Add 。The following code example shows how to use the ContainsKey method to test whether a key exists prior to calling the Add method. 它还演示了如何使用 TryGetValue 方法检索值,这是在程序频繁尝试排序列表中没有的键时检索值的有效方法。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 sorted list. 最后,它通过使用 Item[] ) c # 中的索引器中的 (属性,来显示测试项是否存在的最不有效方法。Finally, it shows the least efficient way to test whether keys exist, by using the Item[] property (the indexer in C#).
此代码示例是为类提供的更大示例的一部分 SortedList<TKey,TValue> 。This code example is part of a larger example provided for the SortedList<TKey,TValue> class.
// 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 list, 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 list, 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 list, 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 list.
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 list.
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 list.
Try
Console.WriteLine("For key = ""tif"", value = {0}.", _
openWith("tif"))
Catch
Console.WriteLine("Key = ""tif"" is not found.")
End Try
注解
此方法是一个 O (日志 n
) 操作,其中 n
是 Count 。This method is an O(log n
) operation, where n
is Count.