logo

Skillnaden mellan Map och HashMap

Kartan är ett gränssnitt i Java som används för att kartlägga nyckelpar-värdena. Den används för att infoga, uppdatera, ta bort elementen. Medan HashMap är en klass av Java-samlingsramverk .

Kartgränssnittet kan endast användas med en implementeringsklass. Det gör det möjligt att lagra värdena i nyckel-par kombination; det tillåter inte dubbletter av nycklar; dock kan vi lagra dubblettvärdena. Dess implementeringsklasser är följande:

HashMap är en kraftfull datastruktur i Java som används för att lagra nyckelparsvärdena. Den mappar ett värde med den tillhörande nyckeln. Det låter oss lagra null-värdena och null-nycklarna. Det är en icke-synkroniserad klass av Java samling.

Implementering av kartgränssnittet

De Karta gränssnittet kan implementeras genom att använda implementeringsklassen. Tänk på exemplet nedan:

 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()); } } } 

Produktion:

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

Implementering av HashMap-klassen

HashMap-klassen kan deklareras enligt följande:

 public class HashMap extends AbstractMap implements Map, Cloneable, Serializable 

Betrakta exemplet nedan för att implementera 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()); } } } 

Produktion:

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

Nyckelskillnader mellan Map och HashMap

Några viktiga skillnader mellan kartan och HashMap är följande:

  • Kartan är ett gränssnitt och HashMap är en klass av Java-samlingsramverket.
  • Kartgränssnittet kan implementeras genom att använda dess implementeringsklasser. I jämförelse implementerar HashMap-klassen Map-gränssnittet.
  • Kartan innehåller unika nyckelpar-värden. Men HashMap kan innehålla dubbletter av värden.
  • Kartan tillåter inte nollvärden. Men HashMap kan ha en nullnyckel och flera värden.
  • Kartan har två implementeringar, som är HashMap och TreeMap. Medan HashMap implementerar Map-gränssnitt och utökar AbstractMap-klassen.
  • Det finns ingen skillnad mellan Map- och HashMap-objekten.