次の方法で共有


Dictionary<TKey,TValue>.Values プロパティ

定義

Dictionary<TKey,TValue> 内の値を格納しているコレクションを取得します。

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

プロパティ値

Dictionary<TKey,TValue>.ValueCollection 内の値を格納している Dictionary<TKey,TValue>

このコード例では、 プロパティを使用して Values ディクショナリ内の値を列挙する方法と、ディクショナリ内のキーと値を列挙する方法を示します。

このコード例は、 クラスに対して提供される大きな例の Dictionary<TKey,TValue> 一部です (openWith は、この例で使用される Dictionary の名前です)。

// To get the values alone, use the Values property.
Dictionary<String^, String^>::ValueCollection^ valueColl =
    openWith->Values;

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

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

' The elements of the ValueCollection are strongly typed
' with the type that was specified for dictionary values.
Console.WriteLine()
For Each s As String In  valueColl
    Console.WriteLine("Value = {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>.ValueCollection 内の値の順序は指定されていませんが、Dictionary<TKey,TValue>.KeyCollection プロパティによって返される Keys 内の関連するキーと同じ順序です。

返される Dictionary<TKey,TValue>.ValueCollection は静的コピーではありません。代わりに、 Dictionary<TKey,TValue>.ValueCollection は元 Dictionary<TKey,TValue>の の値を参照します。 したがって、 への変更は Dictionary<TKey,TValue> 、 に反映され Dictionary<TKey,TValue>.ValueCollection続けます。

このプロパティの値の取得は O(1) 操作です。

適用対象

こちらもご覧ください