logo

A Map és a HashMap közötti különbség

A Map egy Java interfész, amelyet a kulcspár értékek leképezésére használnak. Az elemek beillesztésére, frissítésére, eltávolítására szolgál. Míg a HashMap egy osztálya Java gyűjtemény keretrendszer .

A Map interfész csak implementációs osztállyal használható. Lehetővé teszi az értékek kulcs-pár kombinációban történő tárolását; nem engedélyezi a duplikált kulcsokat; azonban tárolhatjuk az ismétlődő értékeket. Megvalósító osztályai a következők:

A HashMap egy hatékony adatstruktúra a Java-ban, amely a kulcspár értékek tárolására szolgál. Értéket képez le a hozzá tartozó kulccsal. Lehetővé teszi a null értékek és a null kulcsok tárolását. Ez egy nem szinkronizált osztály Jáva Gyűjtemény.

A térképes felület megvalósítása

A Térkép interfész az implementáló osztály használatával valósítható meg. Tekintsük az alábbi példát:

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

Kimenet:

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

A HashMap osztály megvalósítása

A HashMap osztály a következőképpen deklarálható:

 public class HashMap extends AbstractMap implements Map, Cloneable, Serializable 

Tekintsük az alábbi példát a HashMap megvalósításához:

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

Kimenet:

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

Főbb különbségek a Map és a HashMap között

Néhány fő különbség a Térkép és a HashMap között a következő:

  • A Map egy interfész, a HashMap pedig a Java gyűjteményi keretrendszer egy osztálya.
  • A Map interfész implementációs osztályaival valósítható meg. Összehasonlításképpen, a HashMap osztály megvalósítja a Map felületet.
  • A térkép egyedi kulcspár értékeket tartalmaz. A HashMap azonban duplikált értékeket tartalmazhat.
  • A térkép nem engedélyez null értékeket. A HashMap azonban rendelkezhet egy nullkulccsal és több értékkel.
  • A térképnek két megvalósítása van, ezek a HashMap és a TreeMap. Míg a HashMap megvalósítja a Map interfészt és kiterjeszti az AbstractMap osztályt.
  • Nincs különbség a Map és a HashMap objektumok között.