SortedDictionary<TKey,TValue>.IDictionary.Keys 屬性

定義

取得 ICollection,包含 IDictionary 的索引鍵。

C#
System.Collections.ICollection System.Collections.IDictionary.Keys { get; }

屬性值

ICollection,包含 IDictionary 的索引鍵。

實作

範例

下列程式代碼範例示範如何使用 Keys 介面的 System.Collections.IDictionary 屬性搭配 SortedDictionary<TKey,TValue>,以列出字典中的索引鍵。 此範例也會示範如何列舉字典中的索引鍵/值組;請注意,介面的 System.Collections.IDictionary 列舉值會傳 DictionaryEntry 回 物件,而不是 KeyValuePair<TKey,TValue> 物件。

程式代碼範例是較大範例的一部分,包括針對 IDictionary.Add 方法提供的輸出。

C#
using System;
using System.Collections;
using System.Collections.Generic;

public class Example
{
    public static void Main()
    {
        // Create a new sorted dictionary of strings, with string keys,
        // and access it using the IDictionary interface.
        //
        IDictionary openWith = new SortedDictionary<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");
C#
// To get the keys alone, use the Keys property.
icoll = openWith.Keys;

// The elements of the collection are strongly typed
// with the type that was specified for dictionary keys,
// even though the ICollection interface is not strongly
// typed.
Console.WriteLine();
foreach( string s in icoll )
{
    Console.WriteLine("Key = {0}", s);
}
C#
// 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 = {0}, Value = {1}",
        de.Key, de.Value);
}
C#
    }
}

備註

傳回ICollection的索引鍵會根據 Comparer 屬性排序,而且保證順序與 屬性所Values傳回的ICollection對應值相同。

取得此屬性的值是 O (1) 作業。

適用於

產品 版本
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0

另請參閱