私は、特定の値を処理した場合、追跡する必要がある状況に遭遇します。このような場合は、私が処理した値を追跡するのにDictionary(Of TKey, TValue)
を使用します。基本的には、各値が処理されるときに、処理された値をキーとして辞書に挿入します。その値を処理したかどうかを確認したい場合は、ContainsKey
メソッドを使用して、値がコレクションに存在するかどうかを確認します。早送りキー検索を行う辞書の代わりに?
これはうまくいきますが、キーと値のペアの値の側に何かを挿入する必要があります。 List(Of T)
を使用しますが、Dictionaryが提供するハッシュテーブル参照のパフォーマンスが必要です。 .Netには、この目的に適したデータコレクションがありますか?
「TValue」に使用できる2次キーはありますか?そうでない場合は、 'List'と述語を使って検索することが最善の方法です。 –
casperOne
@casperOne:いいえ、鍵が必要です。 – poke
既に1つのプロパティをキーイングしていて、グループ内の項目を区別する2つ目のプロパティがない場合(実際にここでグループ化しています)、辞書はあなたを助けません。 – casperOne