القاموس في لغة جافا
شرح صنف القاموس Dictionary ودالاته في لغة جافا مع مثال عملي
مرحبًا..وردتني بعض الأسئلة عبر البريد الإلكتروني عن القواميس في لغة جافا فأحببت تخصيص هذا المقال لشرح هذا النوع من البيانات في لغة جافا. حيث ستجد تعريفا وشرحا عاما عن القاموس ودالاته ثم في النهاية ستجد مثال عملي كامل عن تعريف القاموس واستخدام تلك الدالات بشكل عملي.
القاموس في لغة جافا وهو من مكتبة util.Dictionary هو أحد أنواع البيانات، وهو صنف abstract أي لايتم إنشاء عنصر منه (راجع ملاحظات جافا
وهو عبارة عن زوج مفتاح-قيمة حيث يتم إدخال المفاتيح وقيمهم (مثلا المفتاح “العمر” والقيمة “26” والمفتاح “الطول” والقيمة “170” وهكذا). كما يمكن من اسمه كونه قاموسًا أن يستخدم فعلا لذلك، مثلا المفتاح الكلمة والقيمة ترجمتها أو مرادفها.
يمكن استخراج القيم بإعطاء مفاتيحها.
تعريف القاموس في لغة جافا
1
public abstract class Dictionary extends Object
وهنا يجب ذكر أنه لإنشاء قاموس في لغة جافا فيجب اختيار صنف يحقق بناء زوج قيمة-مفتاح، مثل HashTables و HashMap و LinkedHashMap. يمكنك المتابعة الآن وفهم القاموس ودالاته دون الخوض في تفاصيل هؤلاء..
الدالات في صنف القاموس
-
إدراج زوج مفتاح قيمة: put(K key, V value)
1
public abstract V put(K key, V value)
-
عرض جميع القيم في القاموس ()elements
1
public abstract Enumeration elements()
-
عرض قيمة لمفتاح معين get(Object key)
1
public abstract V get(Object key)
-
التحقق من خلو القاموس أو عدمه ()isEmpty: هذه الدالة تقوم بإرجاع true إذا كان القاموس فارغ أو false إن كان يحوي على الأقل زوج واحد من مفتاح-قيمة
1
public abstract boolean isEmpty()
-
عرض جميع المفاتيح في القاموس ()keys
1
public abstract Enumeration keys()
-
حذف مفتاح وقيمته وذلك بإعطاء المفتاح فقط: remove(Object key) وتقوم بإرجاع القيمة للمفتاح المعطى بعد حذفهم طبعا من القاموس
1
public abstract V remove(Object key)
-
عرض عدد الأزواج مفتاح-قيمة الموجودين في القاموس (يمكن أن تفكر به أيضا على أنه عدد المفاتيح أو عدد القيم فكلاهما نفس العدد): ()size
1
public abstract int size()
والآن لنرى مثالًا عمليا عن القاموس ودالاته المذكورة:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
// Java Program explaining util.Dictionary class Methods
// put(), elements(), get(), isEmpty(), keys()
// remove(), size()
import java.util.*; //القاموس موجود في هذه المكتبة وعند كتابة رمز النجمة فهذا يعني
// أننا نريد استيراد كل عناصر المكتبة util حيث القاموس أحدها
public class New_Class
{
public static void main(String[] args)
{
// Initializing a Dictionary تهيئة القاموس
Dictionary mulham = new Hashtable(); // hashtable تعريف قاموس باسم ملهم وربطه بـ
// put() method
mulham.put("age", "26"); // إدراج مفتاح العمر والقيمة 26 للقاموس
mulham.put("height", "172");
// elements() method عرض قيم القاموس وذلك يجب أن يتم ضمن حلقة
for (Enumeration i = mulham.elements(); i.hasMoreElements();)
{
System.out.println("Value in Dictionary : " + i.nextElement());
}
// get() method :
System.out.println("\nValue at key = job : " + mulham.get("job"));
System.out.println("Value at key = height : " + mulham.get("height"));
// isEmpty() method :
System.out.println("\nThere is no key-value pair : " + mulham.isEmpty() + "\n");
// keys() method :
for (Enumeration k = mulham.keys(); k.hasMoreElements();)
{
System.out.println("Keys in Dictionary : " + k.nextElement());
}
// remove() method :
System.out.println("\nRemove : " + mulham.remove("age"));
System.out.println("Check the value of removed key : " + mulham.get("age")); //للتأكد من عدم وجود المفتاح وقيمته بعد حذفهما
System.out.println("\nSize of Dictionary : " + mulham.size());
}
}
وسيكون ناتج الكود على الشكل التالي:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Value in Dictionary : 26
Value in Dictionary : 172
Value at key = job : null
Value at key = height : 172
There is no key-value pair : false
Keys in Dictionary : age
Keys in Dictionary : height
Remove : 26
Check the value of removed key : null
Size of Dictionary : 1
إن كان لديك أي سؤال فلا تتردد في مراسلتي.
اقرأ أيضًا: أمثلة في لغة جافا
المراجع: