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) 操作です。

適用対象

こちらもご覧ください