دروس الوحدة (1/2)
تعيين والخريطة
بالإضافة إلى فئة ArrayList (التي تمثل قائمة مرتبة من العناصر)، يقدم Java Collections Framework واجهتين أساسيتين أخريين: Set (للعناصر الفريدة) و Map (لارتباطات القيمة الرئيسية).
المجموعة: مجموعات من العناصر الفريدة
Set عبارة عن مجموعة لا يمكن أن تحتوي على عناصر مكررة. التنفيذ الأكثر شيوعًا هو HashSet، والذي يعتمد داخليًا على جدول التجزئة، والذي يضمن أداءً ممتازًا لعمليات الإدراج والإزالة والتحقق من التواجد.
import java.util.HashSet;
import java.util.Set;
Set<String> uniqueNames = new HashSet<>();
uniqueNames.add("Alice");
uniqueNames.add("Bob");
uniqueNames.add("Alice"); // This insertion will be ignored since "Alice" is already present
System.out.println(uniqueNames.size()); // Prints 2الخريطة: جمعيات القيمة الأساسية
يقوم Map بتعيين مفاتيح فريدة إلى قيم. لا يمكن أن يحتوي على مفاتيح مكررة: يرتبط كل مفتاح بقيمة واحدة على الأكثر. التنفيذ القياسي هو HashMap.
import java.util.HashMap;
import java.util.Map;
Map<String, Integer> ageMap = new HashMap<>();
// Insert or update key-value pairs
ageMap.put("Alice", 25);
ageMap.put("Bob", 30);
// Retrieve value by key
int aliceAge = ageMap.get("Alice"); // Returns 25
// Verify if a key or value exists
boolean hasBob = ageMap.containsKey("Bob"); // Returns trueالتكرار على الخريطة
للتكرار على أزواج القيمة الرئيسية، يمكننا استخدام حلقة for-each على مجموعة الإدخالات (entrySet()) التي توفرها الخريطة.
for (Map.Entry<String, Integer> entry : ageMap.entrySet()) {
System.out.println(entry.getKey() + " is " + entry.getValue() + " years old.");
}جربه بنفسك
أكمل الكود عن طريق الإعلان عن HashSet من السلاسل المسماة العناصر. أضف العناصر "تفاحة" و"موز" و"تفاحة" مرة أخرى، ثم اطبع حجم المجموعة باستخدام System.out.println.
إظهار التلميح
تذكر أنه لا يُسمح بالتكرارات في `Set`، وأن `items.size()` ستعيد العدد الفعلي للعناصر الفريدة المُدرجة.
الحل متاح بعد 3 من المحاولات
أكمل الكود من خلال الإعلان عن HashMap المسمى الأعمار باستخدام مفاتيح السلسلة وقيم الأعداد الصحيحة. اربط المفتاح "أليس" بالرقم 25 والمفتاح "بوب" بالرقم 30، ثم استخرج عمر بوب واطبعه.
إظهار التلميح
استخدم طريقة "put" لإدراج الأزواج وطريقة "get" لاسترداد القيم بناءً على المفاتيح.
الحل متاح بعد 3 من المحاولات
أكمل الرمز عن طريق التحقق مما إذا كانت خريطة البلدان تحتوي على المفتاح "FR" وطباعة النتيجة المنطقية.
إظهار التلميح
استخدم الأسلوب "containsKey" في كائن "countries" للتحقق من وجود المفتاح المطلوب.
الحل متاح بعد 3 من المحاولات