Dictionary.KeyCollectionとは? わかりやすく解説

Dictionary.KeyCollection コンストラクタ

メモ : このコンストラクタは、.NET Framework version 2.0 で新しく追加されたものです。

指定した Dictionary 内のキーを反映する、Dictionary.KeyCollection クラスの新しいインスタンスを初期化します。

名前空間: System.Collections.Generic
アセンブリ: mscorlib (mscorlib.dll 内)
構文構文

例外例外
例外の種類条件

ArgumentNullException

dictionary が null 参照 (Visual Basic では Nothing) です。

解説解説

Dictionary.KeyCollection は静的なコピーではありません。代わりに、この Dictionary.KeyCollection は、元の Dictionary のキーを参照します。そのため、Dictionary に対する変更は、Dictionary.KeyCollection にも反映されます。

このコンストラクタは O(1) 操作です。

プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
Dictionary.KeyCollection ジェネリック クラス
Dictionary.KeyCollection メンバ
System.Collections.Generic 名前空間

Dictionary.KeyCollection ジェネリック クラス

メモ : このクラスは、.NET Framework version 2.0 で新しく追加されたものです。

Dictionary 内のキーのコレクションを表します。このクラスは継承できません。

名前空間: System.Collections.Generic
アセンブリ: mscorlib (mscorlib.dll 内)
構文構文

<SerializableAttribute> _
Public NotInheritable Class
 KeyCollection
    Implements ICollection(Of TKey), IEnumerable(Of
 TKey), _
    ICollection, IEnumerable
[SerializableAttribute] 
public sealed class KeyCollection : ICollection<TKey>,
 IEnumerable<TKey>, 
    ICollection, IEnumerable
[SerializableAttribute] 
public ref class KeyCollection sealed : ICollection<TKey>,
 IEnumerable<TKey>, 
    ICollection, IEnumerable
J# では、ジェネリックな型およびメソッドは使用できますが、新規に宣言することはできません。
JScript では、ジェネリックな型およびメソッドは使用できません。
解説解説

Dictionary.Keys プロパティは、その Dictionary 内のすべてのキーを格納した、この型のインスタンスを返します。Dictionary.KeyCollection 内のキーの順序は指定されていませんが、関連付けられている値が、Dictionary.Values プロパティから返された Dictionary.ValueCollection 内で並べられている順序と同じです。

Dictionary.KeyCollection は静的なコピーではありません。代わりに、この Dictionary.KeyCollection は、元の Dictionary のキーを参照します。そのため、Dictionary に対する変更は、Dictionary.KeyCollection にも反映されます。

継承階層継承階層
System.Object
  System.Collections.Generic.Dictionary.KeyCollection
スレッド セーフスレッド セーフ

この型の public static (Visual Basic では Shared) メンバは、スレッド セーフです。すべてのインスタンス メンバがスレッド セーフになるかどうかは保証されていません。

コレクションが変更されない限り、Dictionary.KeyCollection では、複数の読み込み操作が同時に発生しても問題ありません。ただし、コレクションの列挙処理は、本質的にはスレッド セーフな処理ではありません。すべての列挙処理が終わるまでコレクションをロックすることにより、列挙処理でのスレッド セーフを確保できます。コレクションに対し複数のスレッドがアクセスして読み取りや書き込みを行うことができるようにするには、独自に同期化を実装する必要があります。

プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
Dictionary.KeyCollection メンバ
System.Collections.Generic 名前空間

Dictionary.KeyCollection プロパティ


パブリック プロパティパブリック プロパティ

  名前 説明
パブリック プロパティ Count Dictionary.KeyCollection に格納されている要素の数を取得します。
明示的インターフェイスの実装明示的インターフェイスの実装
  名前 説明
インターフェイスの明示的な実装 System.Collections.ICollection.SyncRoot ICollection へのアクセスを同期するために使用できるオブジェクトを取得します。
参照参照

関連項目

Dictionary.KeyCollection ジェネリック クラス
System.Collections.Generic 名前空間

Dictionary.KeyCollection メソッド


パブリック メソッドパブリック メソッド

明示的インターフェイスの実装明示的インターフェイスの実装
  名前 説明
インターフェイスの明示的な実装 System.Collections.Generic.ICollection<TKey>.Add ICollection に項目を追加します。この実装は常に NotSupportedException をスローします。
インターフェイスの明示的な実装 System.Collections.Generic.ICollection<TKey>.Clear ICollection からすべての項目を削除します。この実装は常に NotSupportedException をスローします。
インターフェイスの明示的な実装 System.Collections.Generic.ICollection<TKey>.Contains ICollection に特定の値が格納されているかどうかを判断します。
インターフェイスの明示的な実装 System.Collections.Generic.ICollection<TKey>.Remove ICollection 内で最初に見つかった特定のオブジェクトを削除します。この実装は常に NotSupportedException をスローします。
インターフェイスの明示的な実装 System.Collections.Generic.IEnumerable<TKey>.GetEnumerator コレクションを反復処理する列挙子を返します。
インターフェイスの明示的な実装 System.Collections.ICollection.CopyTo ICollection の要素を Array にコピーします。Array の特定のインデックスからコピーが開始されます。
インターフェイスの明示的な実装 System.Collections.IEnumerable.GetEnumerator コレクションを反復処理する列挙子を返します。
参照参照

関連項目

Dictionary.KeyCollection ジェネリック クラス
System.Collections.Generic 名前空間

Dictionary.KeyCollection メンバ

Dictionary 内のキーのコレクションを表します。このクラスは継承できません。

Dictionary.KeyCollection ジェネリック型で公開されるメンバを以下の表に示します。


パブリック コンストラクタパブリック コンストラクタ
  名前 説明
パブリック メソッド Dictionary.KeyCollection 指定した Dictionary 内のキーを反映する、Dictionary.KeyCollection クラスの新しいインスタンスを初期化します。
パブリック プロパティパブリック プロパティ
  名前 説明
パブリック プロパティ Count Dictionary.KeyCollection に格納されている要素の数を取得します。
パブリック メソッドパブリック メソッド
明示的インターフェイスの実装明示的インターフェイスの実装
  名前 説明
インターフェイスの明示的な実装 System.Collections.Generic.ICollection<TKey>.Add ICollection に項目を追加します。この実装は常に NotSupportedException をスローします。
インターフェイスの明示的な実装 System.Collections.Generic.ICollection<TKey>.Clear ICollection からすべての項目を削除します。この実装は常に NotSupportedException をスローします。
インターフェイスの明示的な実装 System.Collections.Generic.ICollection<TKey>.Contains ICollection に特定の値が格納されているかどうかを判断します。
インターフェイスの明示的な実装 System.Collections.Generic.ICollection<TKey>.Remove ICollection 内で最初に見つかった特定のオブジェクトを削除します。この実装は常に NotSupportedException をスローします。
インターフェイスの明示的な実装 System.Collections.Generic.IEnumerable<TKey>.GetEnumerator コレクションを反復処理する列挙子を返します。
インターフェイスの明示的な実装 System.Collections.ICollection.CopyTo ICollection の要素を Array にコピーします。Array の特定のインデックスからコピーが開始されます。
インターフェイスの明示的な実装 System.Collections.IEnumerable.GetEnumerator コレクションを反復処理する列挙子を返します。
インターフェイスの明示的な実装 System.Collections.ICollection.SyncRoot ICollection へのアクセスを同期するために使用できるオブジェクトを取得します。
参照参照

関連項目

Dictionary.KeyCollection ジェネリック クラス
System.Collections.Generic 名前空間



英和和英テキスト翻訳

英語⇒日本語日本語⇒英語

辞書ショートカット

すべての辞書の索引

「Dictionary.KeyCollection」の関連用語

Dictionary.KeyCollectionのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



Dictionary.KeyCollectionのページの著作権

   
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2026 Microsoft.All rights reserved.

©2026 GRAS Group, Inc.RSS