\r\n\r\n
プログラミングでは、データを収集するためのさまざまな仕組みがあります。コレクションは、データを保存する方法の一つである。Javaなどのプログラミング言語では、コレクションを使用します。データ要素の集合を保存し、操作するためのクラスとインタフェースを含むフレームワークである。通常の配列では、格納される要素の数は決まっています。これは配列の限界である。これに対して、プログラマはコレクションを使うことができる。コレクションを使用して、**、削除、ソート、検索などの操作を行うことができます。Javaでは、マッピングインターフェースはコレクションに属します。マッピングは、データをキー「値」のペアで表現するために使用される。HashMapとTreeMapはマッピングインターフェースを実装したクラスです。HashMapはデータ要素間で特定の順序を維持しないキーと値のペアを保存するためのマッピングベースのコレクションクラスです。TreeMapはデータ要素間で昇順性を維持するキーと値のペアを保存するためのマップベースのコレクションクラスです。HashMapとTreeMapの主な違いは、HashMapはデータ要素の特定の順序を維持しないのに対し、TreeMapはデータ要素の昇順が維持されることである。
1. 概要と主な違い 2. HashMapとは 3. TreeMapとは 4. HashMapとTreeMapの類似点 5. 並べて比較 - HashMapとTreeMapの表形式 6. まとめ
HashMapは、mapインターフェースを実装したクラスです。HashMapは,AbstractMapクラスを継承し,Mapインタフェースを実装したもので,キーと値のペアを格納する.各要素はユニークです。HashMapでは、キーを使って簡単に要素を見つけることができます。HashMapの宣言を以下に示します。
Public class HashMap extends AbstractMap で Map, Cloneable, Serializable を実装。
キーと値のペアは、それぞれHashMapのエントリになります。
図01:地図インターフェース
HaspMapを理解するために、次のようなシナリオを考えてみましょう。プログラマが学生の名前とそれに対応するインデックス番号のセットを保存したい場合、HashMapを使うことができます。したがって、生徒名がキー、インデックス番号が値となる。
図02:JavaによるHashMapプログラム
以上の手順で、HashMapオブジェクトが作成されます。プログラマーはこのオブジェクトを使って、要素を追加することができます。putメソッド**で値を追加することができます。値を取得するには、プログラマはキーを使って get メソッドを使用する必要があります。studentlist.get ("150") を使用すると、対応するインデックスの名前、つまりAnnが表示されます。 もしプログラマがすべての値を取得したい場合は、マップを使用することができます。このエントリでは、すべてのキーと値が表示されます。出力を見ると、HashMapが特定の順序を保っていないことがわかる。要素を**順に印刷することはありません。エレメントはランダムな順番で印刷されます。
TreeMapは、JavaのMapインタフェースを実装したクラスである。HashMapと同様に、キーと値のペアを保存するために使用されるが、昇順である。TreeMapはNavigableMapを、NavigableMapはSortedMapを、SortedMapはMapを実装しており、各要素は一意である。TreeMapを以下のように宣言します。
パブリッククラスのツリーマップは AbstractMap を継承し、NavigableMap、Cloneable、Serializable を実装しています。
キーと値のペアは、それぞれツリーマップのエントリになります。
図03:JavaによるTreeMapプログラム
以上の手順で、TreeMapオブジェクトが作成されます。プログラマーはこのオブジェクトを使って、要素を追加することができます。putメソッド**で値を追加することができます。値を取得するには、プログラマはキーを指定してgetメソッドを使用する必要があります。studentList.get ("150") を使用すると、そのインデックスに対応する名前Annが表示されます。プログラマがすべての値を取得したい場合、彼はすべてのキーポイントと値を表示するために、マップエントリを使用することができます。出力を見ると、TreeMapが特定の順序を保っていることがわかる。各要素は昇順で表示されます。
HashMapとTreeMap | |
HashMapは、キーと値のペアを保存するためのマッピングベースのコレクションクラスで、データ要素間の特定の順序を維持しない。 | TreeMapは、データ要素を昇順で保持するキーと値のペアを格納するためのマッピングベースのコレクションクラスです。 |
受注状況 | |
HashMapは順序を維持しない。 | ツリー図は昇順に保たれます。 |
空キー | |
HashMap は null キーを含むことができる。 | ツリーマッピングでは、空のキーを持つことはできません。 |
パフォーマンス | |
HashMapはTreeMapより高速です。 | TreeMapはHashMapより遅いです。 |
Javaなどのプログラミング言語には、コレクションフレームワークが含まれています。配列では、要素の数が固定されていることがあります。したがって、配列のサイズは最初に初期化する必要があります。コレクションでは、プログラマは必要なだけの要素を保存することができる。保存量は特に決まっていません。HashMapは、データ要素の中で特定の順序を維持しないキーと値のペアを格納するためのマッピングベースのコレクションクラスです。TreeMapは、データ要素の中で昇順性を維持するキーと値のペアを格納するためのマッピングベースのコレクションクラスです。ここでは、データ要素の順序を特に保持しないHashMapと、Mapインタフェースを実装し、データ要素の昇順性を保持するTreeMapの違いについて説明します。
1. "HashMap-javatpoint in Java. "ポイント、こちらで入手可能 2. "TreeMap-javatpoint in Java. "ポイント。"ポイント、こちらで入手可能です 2. "JavaでTreeMap-javatpoint".