الوصول إلى القيم
جزء من قسم المنطق وتدفق التنفيذ في رحلة Java على Coddy. الدرس 12 من 59.
في HashMap، يرتبط كل مفتاح بقيمة. للوصول إلى قيمة، تستخدم الطريقة get() وتوفّر المفتاح.
يعيد HashMap بعد ذلك القيمة المرتبطة بذلك المفتاح. إذا لم يكن المفتاح موجودًا في HashMap، فإن الطريقة get() تعيد null.
إليك الصيغة الأساسية:
ValueType value = mapName.get(key);mapName: اسمHashMap.key: المفتاح الذي تريد استرداد القيمة المرتبطة به.ValueType: نوع بيانات القيمة.
على سبيل المثال، لنعرّف HashMap أولًا:
HashMap<String, Integer> ages = new HashMap<>();
ages.put("Alice", 30);
ages.put("Bob", 25);والآن لاسترجاع هذه القيم:
Integer aliceAge = ages.get("Alice");
// عمر أليس: 30
Integer charlieAge = ages.get("Charlie");
// عمر تشارلي: nullفي هذا المثال، نسترجع عمر Alice باستخدام المفتاح "Alice". وبما أن "Charlie" ليس مفتاحًا في HashMap، فإن charlieAge تساوي null.
التحدي
سهلأنشئ طريقة باسم getCapital تأخذ وسيطين:
- كائن
HashMapباسمcapitals، حيث تكون المفاتيح أسماء الدول (سلاسل نصية)، والقيم أسماء العواصم (سلاسل نصية). - سلسلة نصية
countryتمثل اسم دولة.
يجب أن تُرجع الطريقة عاصمة الدولة المحددة من خلال الوصول إلى capitals من نوع HashMap. إذا لم يتم العثور على الدولة في HashMap، فأرجِع "Not found".
جرّب بنفسك
// --- وحدات لتحويل سلسلة hashmap إلى hashmap ---
import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;
import java.lang.reflect.Type;
// -----------------------------
import java.util.HashMap;
import java.util.Scanner;
public class Main {
public static String getCapital(HashMap<String, String> capitals, String country) {
// اكتب الكود الخاص بك أدناه
}
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String hashMapString = scanner.nextLine();
String country = scanner.nextLine();
// تحويل String من HashMap إلى HashMap
Type mapType = new TypeToken<HashMap<String, String>>(){}.getType();
HashMap<String, String> countryCapitals = new Gson().fromJson(hashMapString, mapType);
String result = getCapital(countryCapitals, country);
System.out.println(result);
}
}يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس المنطق وتدفق التنفيذ
1المصفوفات متعددة الأبعاد
أساسيات المصفوفات ثنائية الأبعادالوصول إلى عناصر المصفوفات ثنائية الأبعادالحلقات المتداخلة مع المصفوفات ثنائية الأبعادمراجعة - المصفوفات ثنائية الأبعادجمع وطرح المصفوفاتالمصفوفات المتعرجة (Jagged Arrays)المصفوفات ثلاثية الأبعاد وما بعدهاأنماط المصفوفات ثنائية الأبعاد الشائعةمراجعة - كل شيء عن المصفوفات2HashMap الجزء الأول
ما هو الـ HashMap؟تعريف الـ HashMapالوصول إلى القيمالتحقق من وجود المفتاحتعديل القواميسملخص - HashMap3HashMap الجزء الثاني
دوال HashMapالتكرار باستخدام keySet()التكرار باستخدام entrySet()HashMap متداخلمراجعة - إدارة المستودعمراجعة - عمليات HashMap6التحكم المتقدم في تدفق البرنامج
العبارات المعنونةتعبير Switchمطابقة الأنماطجمل الحمايةمراجعة - تدفق التحكمتدرّب بنفسك: مترجم Java عبر الإنترنت