Set と Map は、Java の XNUMX つの重要なインターフェイスです。 どちらもコレクション フレームワークにあります。 さらに、Set および Map インターフェイスを使用して、オブジェクトのコレクションを単一ユニットの形式で格納できます。
ただし、この XNUMX つは同じではなく、いくつかの違いがあり、使用方法も異なります。
主なポイント
- マップとセットはどちらもコレクション データ構造ですが、マップはキーと値のペアを格納し、セットは一意の要素を格納します。
- マップは連想関係を使用してデータを整理するのに役立ち、キーに基づいて値を効率的に取得できます。一方、セットは重複のない個別の要素を格納するのに適しています。
- JavaScript、Python、C++ などのプログラミング言語では、マップとセットには、効率的なデータ操作、挿入、および削除のための特定のメソッドとプロパティがあります。
マップ対 作成セッションプロセスで
マップはキーと値のペアのコレクションであり、各キーが値に関連付けられています。マップ内のキーは一意であり、対応する値を識別して取得するために使用されます。セットは一意の値のコレクションであり、各値はセット内で 1 回のみ出現します。セットは、個別の要素のリストを追跡したり、数学的演算を実行したりするために使用されます。

Map はインターフェースであり、Collection インターフェースの一部です。名前が示すように、Map は一意のキー間の接続を値にマッピングします。1 つのキーでは同じ値を繰り返すことができますが、Map では同じキーを配置することはできません。
Set は Collection のインターフェースでもあります。 これで値が重複することはありません。 null 値でさえ、複数になることはできません。 これで数学的セットを生成できます。 セットはトラバース可能です。
比較表
比較のパラメータ | 地図 | 作成セッションプロセスで |
---|---|---|
定義 | これは、一意のキーを値にマッピングする役割を担うインターフェースです。 | これは Collection インターフェースの下にあるインターフェースであり、重複した要素を運ぶことはできません。 |
Collection インターフェースとの関係 | これは別個の独立したインターフェースです。 | Set は、コレクション インターフェイスの拡張を担当します。 |
目的 | Map の機能は、キーと値の間を接続することです。 | Set の機能は、一意の値を格納することです。 |
ヌル値 | Map には、可能な限り多くの null 値を含めることができます。 | Set は最大で XNUMX つの null 値を持つことができます。 |
使用法 | データをキーまたは値の形式で保存するには、Map を使用する必要があります。 | 固有のコンポーネントのコレクションを作成するには Set を使用する必要があります。 |
地図とは?
Java には Collection インターフェースがあり、その中で重要なインターフェースの 1 つが Map です。Map を使用する場合は、Collection インターフェースを拡張する必要があります。
Map は、オブジェクトを XNUMX つの単位として格納できます。 オブジェクトはキーと値のペアで保存されます。
キーと値の間の接続をマッピングするため、Map と呼ばれます。 Map によって収集されるキーは一意です。 キーは同じ値を持つことができますが、XNUMX つのキーは異なる必要があります。
同一にすることはできません。 すべての値がキーで異なるため、キーを使用するだけで簡単に値にアクセスできます。
Map を使用して、任意の要素を更新または削除することもできます。 Map はさらに、TreeMap、TreeMap、 LinkedHashmap、およびハッシュマップ。
Map は走査に対応していませんが、走査する必要がある場合は、まず Map を Set に変換する必要があります。
何ですか 作成セッションプロセスで?
Set は、Java.util パッケージによって提供されるインターフェースです。 コレクション インターフェイスの拡張により、このインターフェイスを正常に埋め込むことができます。
数学的 Set を設計する目的がある場合、Java では Set を選択する必要があります。 このインターフェイスには同じ要素を入れることができないため、null 値でさえ複数回入力することはできません。
Set では挿入順序を維持できません。 これは、現在のすべての要素がソートされた方法で含まれているためです。
Set の要素を使用すると、結果のシーケンスを誘導するプロセスである Iterate を簡単に実行できます。 keyset() や entry set() などのキーを使用して作業を行う必要があります。
このインターフェイスでは挿入順序が守られていませんが、LinkedHashSet などの一部のクラスでは、挿入順序でリストが設計されています。 注文リストを設定し、データを並べ替えます。 要素を挿入するには、メソッド「treeset」を使用する必要があります。
マップとセットの主な違い
- Map は値への一意のマッピング キーを担当するインターフェイスですが、Set は Collection コンポーネントの下にあるインターフェイスであり、重複した要素を運ぶことはできません。
- Map は別の独立したインターフェイスですが、Set はコレクション インターフェイスの一部であり、その拡張に責任があります。
- null 値は、Map では必要な数だけ持つことができますが、逆に、Set では最大で XNUMX つの null 値を持つことができます。
- Map の機能はキーと値を接続することであり、Set は一意の値を格納する目的が与えられています。
- データをキーまたは値の形式で保存する場合は、Map を選択できます。 一方、一意のコンポーネントのコレクションを作成するには、セットを選択する必要があります。