logo

Разлика между Map и HashMap

Картата е интерфейс в Java, използван за картографиране на стойностите на двойката ключове. Използва се за вмъкване, актуализиране, премахване на елементи. Докато HashMap е клас от Java колекция рамка .

Интерфейсът Map може да се използва само с внедряващ клас. Позволява да се съхраняват стойностите в комбинация ключ-двойка; не позволява дублиране на ключове; въпреки това можем да съхраняваме дублиращите се стойности. Неговите класове за изпълнение са както следва:

HashMap е мощна структура от данни в Java, използвана за съхраняване на стойностите на двойката ключове. Той картографира стойност чрез свързания с нея ключ. Това ни позволява да съхраняваме нулевите стойности и нулевите ключове. Това е несинхронизиран клас на Java колекция.

Внедряване на интерфейса на картата

The Карта интерфейсът може да бъде реализиран чрез използване на класа за изпълнение. Разгледайте примера по-долу:

 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 са следните:

  • Картата е интерфейс, а HashMap е клас от рамката за събиране на Java.
  • Интерфейсът Map може да бъде имплементиран чрез използване на неговите изпълняващи класове. За сравнение, класът HashMap имплементира интерфейса Map.
  • Картата съдържа уникални стойности на двойка ключове. Но HashMap може да съдържа дублирани стойности.
  • Картата не позволява нулеви стойности. Но HashMap може да има един нулев ключ и множество стойности.
  • Картата има две реализации, които са HashMap и TreeMap. Докато HashMap имплементира интерфейса на Map и разширява класа AbstractMap.
  • Няма разлика между обектите Map и HashMap.