\r\n\r\n
ディクショナリーとハッシュテーブル
辞書型は(s's'valueType d don't need b'Xing)、Hashtableは(s's'valuetype needs b'Xing )ではない。 Hashtableは常に値がオブジェクトであることを認識しているので、辞書IMHОよりも優れた値の取得方法であるといえるでしょう。.NET 3.5では、辞書と同様の動作をするメソッドを持つ拡張機能を簡単に記述することができます。
Hashtableクラスは、キーのストレージ内に整数値(ハッシュと呼ばれる)を使用する辞書クラスの特定のタイプです。Hashtableクラスは、cöllectin**明確なキーの検索を高速化するためにHashtableを使用します。NETのすべてのオブジェクトはこのオブジェクトクラスから派生しています。このクラスは GetHash メソッドをサポートしており、オブジェクトを一意に識別する整数を返します。Hashtable クラスは一般に非常に効率のよいコレクションです。Hashtable クラスの唯一の問題は、小さなプレフィックスを必要とすることで、小さなコレクション(10要素未満)のプレフィックスがパフォーマンスの妨げになることがあります。
ハッシュテーブルと辞書には重要な違いがあります。ハッシュテーブルの値を取得するためにインデクサを使用した場合、ハッシュテーブルは空の存在しない項目を正常に返しますが、辞書に存在しない項目にインデクサを使ってアクセスしようとすると、辞書はエラーになります。
HashTableは弱い型付けの基本クラスであり,DictionaryBase抽象クラスは純粋に型付けされ,内部でハッシュテーブルを使用する.
辞書で見られる不思議な現象に、複数の項目を追加しても、追加される順番が変わらないというものがある。したがって、辞書で語彙を使用すると、**それら**と同じ順序でレコードを取得することになります。しかし、標準的なハッシュテーブルでは、同じレコードを追加しても順番は維持されません。もし「Dictionary is based〇n Hashtable」が本当なら、なぜDictionaryはHashtable dоes nоtを維持しなければならないのでしょうか?