ハッシュ テーブルは、キーのハッシュ コードに従って配置されたキーと値のペアの非普遍的なコレクションです。ハッシュ テーブルは、ハッシュ テーブルを使用して保存されるコレクションを作成するために使用されます。ハッシュ テーブルは、各キーのハッシュ コードを計算し、内部バスケットに保存することでルックアップを最適化します。ハッシュ テーブルから特定の値にアクセスすると、ハッシュ コードは指定されたキーと一致します。
このハッシュ テーブル コレクションは、C# の System.Collections 名前空間で定義されます。ハッシュ テーブルのコレクションを表すクラスが「Hashtable」クラスです。このクラスは、ハッシュ テーブルのコレクションを操作するためのコンストラクター、メソッド、およびプロパティを提供します。デフォルトでは、ハッシュ テーブル コレクションはソートされていません。ハッシュ テーブルのソートされたコレクションが必要な場合は、それを Array または ArrayList として表し、要素をソートする必要があります。
この記事では、ハッシュ テーブルの要素を並べ替えられた配列の形式で取得する方法を説明します。それでは始めましょう。
デフォルトでは、ハッシュ テーブル コレクションはソートされていないことがわかっています。キーに基づいてハッシュ テーブル コレクションを作成し、各キーに値を追加するため、ハッシュ テーブル コレクションの並べ替えは非常に困難になる場合があります。
ハッシュ テーブルのコレクションを並べ替える場合は、キーまたは値に基づいて並べ替える必要があります。 Hashtable クラスには、ハッシュ テーブルのコレクションをソートするための直接メソッドはありません。したがって、他の方法に目を向ける必要があります。
1 つの方法は、ハッシュ テーブルの要素 (キーまたは値) を並べ替えられた配列として取得することです。これを行うには、以下に示す手順に従います。
ハッシュ テーブル オブジェクトを作成する
このオブジェクトにキーと値のペアを入力します
文字列型の配列を作成します。長さ = ハッシュ テーブルの長さです。
キーに従ってハッシュ テーブルを走査し、配列に各キーを入力します
生成された配列を並べ替える
以下に示すように、C# を使用してこのメソッドを作成しました。
リーリーこのプログラムでは、Hashtable オブジェクト langCodes を定義し、それに値を設定します。 キーと値のペアを使用します。次に、ハッシュ テーブルの長さを取得し、次を使用します。 この長さの配列「sortedArray」を宣言します。次に横断します langCodes はテーブルをハッシュし、ソートされた配列オブジェクトにキーを設定します。 langCodes ハッシュ テーブルの値。
次に、フィルター Array.Sort(sortedArray) を使用して配列を並べ替えて出力します。 このソートされた配列。
プログラムの出力は次のとおりです。
リーリー出力から、ハッシュ テーブルのキー要素が要素の並べ替えられた配列として取得されていることがわかります。
次に、別の例を挙げてみましょう。上で説明したのと同じ方法を使用します。唯一の違いは、この例では、ハッシュ テーブルのキーの代わりに値を配列に入力することです。 ######例###
完全な C# プログラムを見てみましょう。出力プログラムの出力を以下に示します。
リーリー
出力から、配列の内容 (ハッシュ テーブルの値) が実際にアルファベット順に並べ替えられていることがわかります。ハッシュ テーブルの出力とソートされた配列を簡単に比較できます。ハッシュ テーブルでは、出力はソートされません。キーと値のペアはランダムに表示されます。配列内の場合、出力はソートされます。ハッシュ テーブルの要素を並べ替えるのは難しいですが、ハッシュ テーブルの要素を配列として表すことでそれを行うことができます。ただし、キーと値を同時にソートすることはできません。配列内のすべてのキーまたは配列内のすべての値を取得できます。次に、Array.Sort() フィルターを使用して配列を並べ替えます。ハッシュ テーブルを配列または配列のリストに変換して処理することもできます。
以上がハッシュテーブル要素をソートされた配列として取得するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。