ハッシュ テーブルとディクショナリはどちらも、データを格納するために使用されるデータ構造タイプです。どちらのデータ構造も、データをキーと値のペアの形式で保存します。
主要な機能の違いに基づいて、HashTable と Dictionary を次のように区別できます-
Sr. Number | Key | ハッシュ テーブル | Dictionary |
---|---|---|---|
1 | Dictionary | ||
1 td> | Definition | HashTable は、System.Collections で定義された、キーと値のペアの形式でデータを格納するために使用される非ジェネリック コレクションです。名前空間内の 。 | 一方、Dictionary は、System.Collection.Generics 名前空間で定義されたジェネリック型のコレクションであり、データもキーと値のペアの形式で格納されます。 |
2 | DataType | HashTable では、同じデータ型または異なるデータ型のデータをキーと値として保存できます。キーと値。同じデータ型はハッシュ テーブルにのみ保存できます。また、キーと値のタイプを指定する必要もありません。 | 一方、ディクショナリのキーと値は、同じデータ型を持つ必要がある場合にのみディクショナリに格納でき、キーと値が同じデータ型である必要がある場合は、ディクショナリの型を指定する必要があります。作成した。 |
3 | データ取得 | HashTable の場合、辞書と比較してボックス化およびボックス化解除のため、データの取得が遅くなります。 | 一方、辞書の場合はボックス化やアンボックス化が行われないため、検索が高速になります。 |
4 | null 値 | 指定された HashTable に存在しないキーを処理するために HashTable の null 値にアクセスした場合、null 値は次のようになります。一方、辞書の場合、指定された辞書に存在しないキーにアクセスしようとすると、エラーが発生します。 | |
データ順序 | HashTable は、キー値データが挿入される順序を維持しません。 | 一方、Dictionary は格納された値の挿入順序を維持します。 |
以上がC#のハッシュテーブルと辞書の違いの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。