1. ホーム
  2. c#

[解決済み] C#でHashtableよりDictionaryが好まれる理由とは?

2022-03-17 16:03:52

質問

ほとんどのプログラミング言語では、ハッシュテーブルよりも辞書の方が好まれます。 その理由は何でしょうか?

どのように解決するのですか?

参考までに、辞書 (概念的には)ハッシュテーブルです。

という意味なら、なぜ Dictionary<TKey, TValue> クラスの代わりに Hashtable class?" ならば、簡単な答えです。 Dictionary<TKey, TValue> は汎用型です。 Hashtable はありません。つまり型安全性を得るには Dictionary<TKey, TValue> ランダムなオブジェクトを挿入することはできないし、取り出した値をキャストする必要もないからだ。

興味深いことに Dictionary<TKey, TValue> の実装は、.NET Framework の Hashtable というコメントがあります。

一般的なDictionaryはHashtableのソースからコピーしたものです

ソース