logo

マップとハッシュマップの違い

Map は、キー ペアの値をマップするために使用される Java のインターフェイスです。要素の挿入、更新、削除に使用されます。一方、HashMap は次のクラスです。 Java コレクション フレームワーク

Map インターフェイスは、実装クラスでのみ使用できます。これにより、値をキーペアの組み合わせで保存できます。重複キーは許可されません。ただし、重複した値を保存することはできます。その実装クラスは次のとおりです。

HashMap は、キー ペアの値を格納するために使用される Java の強力なデータ構造です。関連付けられたキーによって値をマップします。これにより、null 値と null キーを保存できるようになります。非同期クラスです ジャワ コレクション。

マップインターフェイスの実装

地図 インターフェースは実装クラスを使用して実装できます。以下の例を考えてみましょう。

 import java.util.*; public class MapExample { public static void main(String args[]) { Map m = new HashMap(); //implementation of the Map Interface m.put('Abhi', new Integer(001)); //Adding elements m.put('Nick', new Integer(002)); m.put('Ketty', new Integer(003)); m.put('Paul', new Integer(004)); for (Map.Entry me : m.entrySet())// Traversing of the elements through the Map { System.out.print(me.getKey() + ':'); System.out.println(me.getValue()); } } } 

出力:

 Nick:2 Abhi:1 Paul:4 Ketty:3 

HashMap クラスの実装

HashMap クラスは次のように宣言できます。

 public class HashMap extends AbstractMap implements Map, Cloneable, Serializable 

HashMap を実装するための以下の例を考えてみましょう。

 //Java program to store the key-pair values using HashMap import java.util.*; public class HashMapDemo { public static void main(String args[]){ //HashMap implementation HashMap m=new HashMap();//Creating HashMap m.put(1,'Chris'); //Adding elements in Map m.put(2,'Morris'); m.put(3,'Sam'); m.put(4,'Cruise'); System.out.println('Iterating Hashmap...'); for(Map.Entry me : m.entrySet()){ System.out.println(me.getKey()+' '+me.getValue()); } } } 

出力:

 Iterating Hashmap... 1 Chris 2 Morris 3 Sam 4 Cruise 

Map と HashMap の主な違い

Map と HashMap の主な違いは次のとおりです。

  • Map はインターフェイスであり、HashMap は Java コレクション フレームワークのクラスです。
  • Map インターフェイスは、その実装クラスを使用して実装できます。対照的に、HashMap クラスは Map インターフェイスを実装します。
  • マップには一意のキーペア値が含まれています。ただし、HashMap は重複した値を保持できます。
  • マップでは null 値は許可されません。ただし、HashMap には 1 つの null キーと複数の値を含めることができます。
  • Map には、HashMap と TreeMap という 2 つの実装があります。一方、HashMap は Map インターフェイスを実装し、AbstractMap クラスを拡張します。
  • Map オブジェクトと HashMap オブジェクトの間に違いはありません。