セットとマップの違いは何ですか

目次:

Anonim

NS 主な違い セットとマップの間はそれです Setはコレクションインターフェイスのサブタイプですが、Mapはコレクションインターフェイスのサブタイプではありません。

配列は同じタイプのデータを格納します。ただし、配列を作成した後は、それを変更することはできません。 Javaなどのプログラミング言語は、データを動的に格納するためのコレクションを提供します。複数のオブジェクトを1つのグループとして保存できます。さらに、コレクションの並べ替え、検索、挿入、削除などの操作を実行できます。 Javaでコレクションを実装するための基本インターフェースは、コレクションと呼ばれます。コレクションインターフェイスを拡張するさまざまなインターフェイスがあります。それらの1つはSetインターフェイスです。一方、Mapは別個のインターフェースであるため、Collectionインターフェースを拡張しません。

Java、マップ、セット

セットとは

セットは、コレクションインターフェイスを拡張するインターフェイスです。重複する値を含めることはできません。 HashSetとTreeSetはセットを実装します。 Setインターフェースは、コレクションに対して操作を実行するためのadd、sizeなどのメソッドを提供します。例は次のとおりです。

図1:HashSetを使用したプログラム

HashSetは、タイプSetのオブジェクトです。文字列を保存できます。 addメソッドは、要素をHashSetに挿入するために使用されます。 「apple」として2つの文字列がありますが、出力には1つのappleしかありません。したがって、セットにすでに存在する要素は表示されません。さらに、セットを順序付けられていないリストとして出力します。 sizeメソッドは、セット内のアイテムの数を示します。

次のような別の例を参照してください。

図2:TreeSetを使用したプログラム

ツリーセットは、文字列を格納できるSet型のオブジェクトです。 addメソッドは、ツリーセットに要素を挿入するために使用されます。 「apple」として2つの文字列がありますが、出力には1つのappleしかありません。したがって、一意の要素のみが表示されます。さらに、セットを順序付きリストとして出力します。 sizeメソッドは、セット内のアイテムの数を示します。

マップとは

マップは、キーと値の間のマッピングを表すインターフェースです。コレクションインターフェイスは拡張されません。したがって、マップの動作は通常のコレクションタイプとは異なります。マップに重複するキーを含めることはできず、各キーは最大で1つの値にマップできます。 HashMapはMapインターフェースを実装し、SortedMapはMapインターフェースを拡張し、TreeMapはSortedMapインターフェースを実装します。

図3:HashMapを使用したプログラム

studentListは、タイプMapのオブジェクトです。文字列を保存できます。 putメソッドは、studentListに要素を挿入するために使用されます。 「Peter」には2つのレコードがありますが、表示されるのは1つのレコードのみです。 HashMapは挿入された順序を維持しません。一意の値のみを出力します。

図4:TreeMapを使用したプログラム

LettersはMapタイプのオブジェクトです。文字列を保存できます。 putメソッドは、文字に要素を挿入するために使用されます。 「B」には2つのレコードがありますが、表示されるのは1つのレコードのみです。 TreeMapは、挿入された順序を維持しません。一意の値のみを出力します。

セットとマップの違い

意味

セットはコレクション階層内のインターフェースであり、重複する要素を含めることはできませんが、マップは一意のキーを値にマップするインターフェースです。これがSetとMapの主な違いです。

コレクションインターフェイスとの関連付け

Setはコレクションインターフェイスを拡張するインターフェイスですが、Mapは別のインターフェイスです。

機能性

機能性もセットとマップの大きな違いです。 Setは一意の値を格納するのに役立ちますが、Mapインターフェイスはキーと値の間のマッピングを表します。

結論

SetとMapの主な違いは、SetはCollectionインターフェイスのサブタイプであるのに対し、MapはCollectionインターフェイスのサブタイプではないことです。

リファレンス:

1.「Javaで設定」。 GeeksforGeeks、2018年11月26日、こちらから入手可能2。 「Javaのマップインターフェイス。」 GeeksforGeeks、2018年11月26日、こちらから入手できます。

セットとマップの違いは何ですか