System.Generics.Collections.TDictionary
Delphi
TDictionary<TKey,TValue> = class(TEnumerable<TPair<TKey,TValue>>)
C++
template<typename TKey, typename TValue> class PASCALIMPLEMENTATION TDictionary__2 : public TEnumerable__1<TPair__2<TKey,TValue> >
プロパティ
種類 | 可視性 | ソース | ユニット | 親 |
---|---|---|---|---|
class | public | System.Generics.Collections.pas System.Generics.Collections.hpp |
System.Generics.Collections | System.Generics.Collections |
説明
キーと値のペアのコレクションです。
TDictionary は、キー-値ペアの汎用的なコレクションを表します。
このクラスは、キーのコレクションから値のコレクションへのマッピングを提供します。 TDictionary オブジェクトを作成する場合は、初期の容量、等価比較演算子、および初期の内容のさまざまな組み合わせを指定できます。
Add メソッドまたは AddOrSetValue メソッドを利用して、対応する値に関連付けられたキーを追加できます。 Remove メソッドまたは Clear メソッド(すべてのキー-値ペアを削除する)を利用して、エントリを削除できます。 キーはハッシュ化されているため、キーと値のペアの追加や削除、およびキーの検索は効率的です(O(1) に近い)。 値は nil でもかまいませんが、キーは nil であってはなりません。また、キーに対する等価比較演算子が存在しなければなりません。
TryGetValue、ContainsKey、および ContainsValue の各メソッドを利用して、キーと値が存在するかどうかをテストできます。
Items プロパティは、すべての Count ディクショナリ エントリを一覧表示します。 Items プロパティにインデックスを付けることによって、値を設定したり取得することもできます。 この方法で値を設定すると、既存の値がある場合には上書きされます。
TDictionary から派生した TObjectDictionary クラスは、辞書エントリから削除されたオブジェクトを自動的に解放するメカニズムを提供します。
アクセス メソッド
このセクションでは、TDictionary または TObjectDictionary に対して読み取りおよび書き込みを行うためのメソッドをまとめました。書き込み時にキーが重複した場合や、読み取り時にキーが見つからない場合の結果も示しています。
WRITE
メソッド | インデックスの型 | 値の型 | キーが重複した場合 |
---|---|---|---|
Add | TKey | TValue | 例外 |
AddOrSetValue | TKey | TValue | 上書き |
Items | TKey | TValue | 上書き |
READ
メソッド | インデックス/入力の型 | 結果の型 | キーが見つからない場合 | メモ |
---|---|---|---|---|
ContainsKey | TKey | Boolean | False | 見つかった場合は True |
ContainsValue | TValue | Boolean | N/A | 見つかった場合は True |
ExtractPair | TKey | TPair | デフォルトのペア | TPair を返し、項目をディクショナリから削除する |
Items | TKey | TValue | 例外 | TryGetValue を使用すると例外を回避できる |
operator [] | TKey | TValue | 例外 | C++ のみ |
Keys | N/A | TKeyCollection | N/A | |
ToArray | N/A | TArray<TPair<TKey,TValue>> | N/A | |
TValue、Boolean | デフォルト、false | Items[] と同様だが例外は発生しない | ||
Values | N/A | TValueCollection | N/A |
関連項目
- Data.DBXCommon.TKey
- System.Rtti.TValue
- System.Generics.Collections.TDictionary.TKeyCollection
- System.Generics.Collections.TDictionary.TValueCollection
- TObjectDictionary