Dictionary<TKey,TValue>.IDictionary.Values Egenskap
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Hämtar en ICollection som innehåller värdena i IDictionary.
property System::Collections::ICollection ^ System::Collections::IDictionary::Values { System::Collections::ICollection ^ get(); };
System.Collections.ICollection System.Collections.IDictionary.Values { get; }
member this.System.Collections.IDictionary.Values : System.Collections.ICollection
ReadOnly Property Values As ICollection Implements IDictionary.Values
Egenskapsvärde
En ICollection som innehåller värdena i IDictionary.
Implementeringar
Exempel
I följande kodexempel visas hur du använder IDictionary.Values egenskapen för System.Collections.IDictionary gränssnittet med en Dictionary<TKey,TValue>, för att lista värdena i ordlistan. Exemplet visar också hur du räknar upp nyckel/värde-paren i ordlistan. Observera att uppräknaren System.Collections.IDictionary för gränssnittet returnerar DictionaryEntry objekt i stället KeyValuePair<TKey,TValue> för objekt.
using System;
using System.Collections;
using System.Collections.Generic;
public class Example
{
public static void Main()
{
// Create a new dictionary of strings, with string keys,
// and access it using the IDictionary interface.
//
IDictionary openWith = new Dictionary<string, string>();
// Add some elements to the dictionary. There are no
// duplicate keys, but some of the values are duplicates.
// IDictionary.Add throws an exception if incorrect types
// are supplied for key or value.
openWith.Add("txt", "notepad.exe");
openWith.Add("bmp", "paint.exe");
openWith.Add("dib", "paint.exe");
openWith.Add("rtf", "wordpad.exe");
// To get the values alone, use the Values property.
ICollection icoll = openWith.Values;
// The elements of the collection are strongly typed
// with the type that was specified for dictionary values,
// even though the ICollection interface is not strongly
// typed.
Console.WriteLine();
foreach( string s in icoll )
{
Console.WriteLine($"Value = {s}");
}
// When you use foreach to enumerate dictionary elements
// with the IDictionary interface, the elements are retrieved
// as DictionaryEntry objects instead of KeyValuePair objects.
Console.WriteLine();
foreach( DictionaryEntry de in openWith )
{
Console.WriteLine($"Key = {de.Key}, Value = {de.Value}");
}
}
}
open System
open System.Collections
open System.Collections.Generic
// Create a new dictionary of strings, with string keys,
// and access it using the IDictionary interface.
let openWith: IDictionary = Dictionary<string, string>()
// Add some elements to the dictionary. There are no
// duplicate keys, but some of the values are duplicates.
// IDictionary.Add throws an exception if incorrect types
// are supplied for key or value.
openWith.Add("txt", "notepad.exe")
openWith.Add("bmp", "paint.exe")
openWith.Add("dib", "paint.exe")
openWith.Add("rtf", "wordpad.exe")
// To get the values alone, use the Values property.
let icoll: ICollection = openWith.Values
// The elements of the collection are strongly typed
// with the type that was specified for dictionary values,
// even though the ICollection interface is not strongly
// typed.
printfn ""
for s in icoll do
printfn $"Value = {s}"
// When you use foreach to enumerate dictionary elements
// with the IDictionary interface, the elements are retrieved
// as DictionaryEntry objects instead of KeyValuePair objects.
printfn ""
for de in openWith do
let de = de :?> DictionaryEntry
printfn $"For key = {de.Key}, value = {de.Value}"
Imports System.Collections
Imports System.Collections.Generic
Public Class Example
Public Shared Sub Main()
' Create a new dictionary of strings, with string keys,
' and access it using the IDictionary interface.
'
Dim openWith As IDictionary = _
New Dictionary(Of String, String)
' Add some elements to the dictionary. There are no
' duplicate keys, but some of the values are duplicates.
' IDictionary.Add throws an exception if incorrect types
' are supplied for key or value.
openWith.Add("txt", "notepad.exe")
openWith.Add("bmp", "paint.exe")
openWith.Add("dib", "paint.exe")
openWith.Add("rtf", "wordpad.exe")
' To get the values alone, use the Values property.
Dim icoll As ICollection = openWith.Values
' The elements of the collection are strongly typed
' with the type that was specified for dictionary values,
' even though the ICollection interface is not strongly
' typed.
Console.WriteLine()
For Each s As String In icoll
Console.WriteLine("Value = {0}", s)
Next s
' When you use foreach to enumerate dictionary elements
' with the IDictionary interface, the elements are retrieved
' as DictionaryEntry objects instead of KeyValuePair objects.
Console.WriteLine()
For Each de As DictionaryEntry In openWith
Console.WriteLine("Key = {0}, Value = {1}", _
de.Key, de.Value)
Next
End Sub
End Class
Kommentarer
Ordningen på värdena i den returnerade ICollection är ospecificerad, men den är garanterad att vara samma ordning som motsvarande nycklar i den ICollection som returneras av Keys egenskapen.
Att hämta värdet för den här egenskapen är en O(1)-åtgärd.