logo

Różnica między mapą a HashMapem

Mapa to interfejs w języku Java używany do mapowania wartości par kluczy. Służy do wstawiania, aktualizacji, usuwania elementów. Podczas gdy HashMap jest klasą Struktura kolekcji Java .

Interfejsu Map można używać tylko z klasą implementującą. Umożliwia przechowywanie wartości w kombinacji par kluczy; nie pozwala na duplikowanie kluczy; możemy jednak przechowywać zduplikowane wartości. Jego klasy implementacyjne są następujące:

HashMap to potężna struktura danych w Javie używana do przechowywania wartości par kluczy. Odwzorowuje wartość według powiązanego klucza. Pozwala nam przechowywać wartości zerowe i klucze zerowe. Jest to niezsynchronizowana klasa Jawa kolekcja.

Implementacja interfejsu mapy

The Mapa interfejs można zaimplementować za pomocą klasy implementującej. Rozważ poniższy przykład:

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

Wyjście:

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

Implementacja klasy HashMap

Klasę HashMap można zadeklarować w następujący sposób:

 public class HashMap extends AbstractMap implements Map, Cloneable, Serializable 

Rozważ poniższy przykład, aby zaimplementować 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()); } } } 

Wyjście:

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

Kluczowe różnice między mapą a HashMapem

Niektóre kluczowe różnice między Mapą a HashMapem są następujące:

  • Mapa jest interfejsem, a HashMap jest klasą struktury kolekcji Java.
  • Interfejs Map można zaimplementować przy użyciu jego klas implementujących. Dla porównania klasa HashMap implementuje interfejs Map.
  • Mapa zawiera unikalne wartości par kluczy. Ale HashMap może przechowywać zduplikowane wartości.
  • Mapa nie dopuszcza wartości null. Ale HashMap może mieć jeden klucz zerowy i wiele wartości.
  • Mapa ma dwie implementacje, którymi są HashMap i TreeMap. Natomiast HashMap implementuje interfejs Map i rozszerza klasę AbstractMap.
  • Nie ma różnicy pomiędzy obiektami Map i HashMap.