الخريطة عبارة عن واجهة في Java تُستخدم لتعيين قيم زوج المفاتيح. يتم استخدامه لإدراج العناصر وتحديثها وإزالتها. في حين أن HashMap عبارة عن فئة من إطار جمع جافا .
لا يمكن استخدام واجهة الخريطة إلا مع فئة التنفيذ. يسمح بتخزين القيم في تركيبة زوج المفاتيح؛ ولا يسمح بالمفاتيح المكررة؛ ومع ذلك، يمكننا تخزين القيم المكررة. فئاته التنفيذية هي كما يلي:
- خريطة التجزئة
- جدول التجزئة
- خريطة الشجرة
- ConcurrentHashMap
- LinkedHashMap
HashMap عبارة عن بنية بيانات قوية في Java تستخدم لتخزين قيم زوج المفاتيح. يقوم بتعيين قيمة بواسطة المفتاح المرتبط بها. يسمح لنا بتخزين القيم الخالية والمفاتيح الخالية. إنها فئة غير متزامنة من جافا مجموعة.
تنفيذ واجهة الخريطة
ال خريطة يمكن تنفيذ الواجهة باستخدام فئة التنفيذ. خذ بعين الاعتبار المثال أدناه:
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
الاختلافات الرئيسية بين الخريطة وHashMap
بعض الاختلافات الرئيسية بين Map وHashMap هي كما يلي:
- الخريطة عبارة عن واجهة، وHashMap هي فئة من إطار مجموعة Java.
- يمكن تنفيذ واجهة الخريطة باستخدام فئات التنفيذ الخاصة بها. بالمقارنة، تطبق فئة HashMap واجهة الخريطة.
- تحتوي الخريطة على قيم فريدة لزوج المفاتيح. لكن يمكن لـ HashMap الاحتفاظ بقيم مكررة.
- لا تسمح الخريطة بالقيم الخالية. لكن يمكن أن يحتوي HashMap على مفتاح فارغ واحد وقيم متعددة.
- تحتوي الخريطة على تطبيقين، وهما HashMap وTreeMap. بينما يقوم HashMap بتنفيذ واجهة الخريطة وتوسيع فئة AbstractMap.
- لا يوجد فرق بين كائنات Map وHashMap.