.NET Hashtable と Dictionary のパフォーマンスの比較
ハッシュ テーブルのデータ構造管理について、.NET Hashtable と Dictionary の間で議論が行われてきました。議論の話題。 Dictionary にはボックス化とボックス化解除の削減などの一般的な利点がありますが、Hashtable は挿入順序の保持に優れているため、特定のシナリオでは高速であると広く考えられています。ただし、この信念は完全に正確ではない可能性があります。
挿入オーダーの保存: 誤解
一般的な想定に反して、辞書もハッシュテーブルも挿入オーダーの保存を保証しません。アイテム用。どちらもデータ ストレージに内部ハッシュ テーブルを使用し、ハッシュ テーブルは本質的に順序を維持しません。
パフォーマンスに関する考慮事項
ほとんどの状況で、Dictionary と Hashtable はボクシング時に同様のパフォーマンスを提供します。 /開梱の問題は除外されます。主な構造の違いは衝突解決にあります。辞書はチェーンを使用するのに対し、ハッシュテーブルは再ハッシュを使用します。
辞書とハッシュテーブルの選択
辞書とハッシュテーブルの選択は、特定の条件に依存します。要件。次の場合:
結論
一方で、Hashtable は可能性があります。 .NET の古いバージョンでは順序を維持するのにより適していましたが、この利点はもう意味がありません。 Dictionary は、依然としてほとんどのシナリオで推奨される選択肢であり、ジェネリックス、型安全性、および Hashtable と同等の全体的なパフォーマンスを提供します。
以上が.NET ハッシュテーブルとディクショナリ: アプリケーションにはどちらを選択すべきですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。