Dictionary<TKey,TValue>.Keys 属性

定义

获得一个包含 Dictionary<TKey,TValue> 中的键的集合。

public:
 property System::Collections::Generic::Dictionary<TKey, TValue>::KeyCollection ^ Keys { System::Collections::Generic::Dictionary<TKey, TValue>::KeyCollection ^ get(); };
public System.Collections.Generic.Dictionary<TKey,TValue>.KeyCollection Keys { get; }
member this.Keys : System.Collections.Generic.Dictionary<'Key, 'Value>.KeyCollection
Public ReadOnly Property Keys As Dictionary(Of TKey, TValue).KeyCollection

属性值

一个 Dictionary<TKey,TValue>.KeyCollection,包含 Dictionary<TKey,TValue> 中的键。

示例

下面的代码示例演示如何使用 Keys 属性枚举字典中的键,以及如何枚举字典中的键和值。

此代码是可以编译和执行的较大示例的一部分, (openWith 是此示例中使用的字典的名称) 。 请参阅 Dictionary<TKey,TValue>

// To get the keys alone, use the Keys property.
Dictionary<String^, String^>::KeyCollection^ keyColl =
    openWith->Keys;

// The elements of the KeyCollection are strongly typed
// with the type that was specified for dictionary keys.
Console::WriteLine();
for each( String^ s in keyColl )
{
    Console::WriteLine("Key = {0}", s);
}
// To get the keys alone, use the Keys property.
Dictionary<string, string>.KeyCollection keyColl =
    openWith.Keys;

// The elements of the KeyCollection are strongly typed
// with the type that was specified for dictionary keys.
Console.WriteLine();
foreach( string s in keyColl )
{
    Console.WriteLine("Key = {0}", s);
}
' To get the keys alone, use the Keys property.
Dim keyColl As _
    Dictionary(Of String, String).KeyCollection = _
    openWith.Keys

' The elements of the KeyCollection are strongly typed
' with the type that was specified for dictionary keys.
Console.WriteLine()
For Each s As String In  keyColl
    Console.WriteLine("Key = {0}", s)
Next s
// When you use foreach to enumerate dictionary elements,
// the elements are retrieved as KeyValuePair objects.
Console::WriteLine();
for each( KeyValuePair<String^, String^> kvp in openWith )
{
    Console::WriteLine("Key = {0}, Value = {1}",
        kvp.Key, kvp.Value);
}
// When you use foreach to enumerate dictionary elements,
// the elements are retrieved as KeyValuePair objects.
Console.WriteLine();
foreach( KeyValuePair<string, string> kvp in openWith )
{
    Console.WriteLine("Key = {0}, Value = {1}",
        kvp.Key, kvp.Value);
}
' When you use foreach to enumerate dictionary elements,
' the elements are retrieved as KeyValuePair objects.
Console.WriteLine()
For Each kvp As KeyValuePair(Of String, String) In openWith
    Console.WriteLine("Key = {0}, Value = {1}", _
        kvp.Key, kvp.Value)
Next kvp

注解

Dictionary<TKey,TValue>.KeyCollection键的顺序未指定,但它与 属性返回Values的 中Dictionary<TKey,TValue>.ValueCollection关联值的顺序相同。

返回的 Dictionary<TKey,TValue>.KeyCollection 不是静态副本;相反, Dictionary<TKey,TValue>.KeyCollection 引用回原始 Dictionary<TKey,TValue>中的键。 因此,对 Dictionary<TKey,TValue> 的更改将继续反映在 中 Dictionary<TKey,TValue>.KeyCollection

获取此属性的值是 O (1) 操作。

适用于

另请参阅