التحقق من وجود المفتاح
جزء من قسم Logic & Flow في رحلة Java على Coddy. الدرس 13 من 59.
تتحقق الطريقة containsKey(key) مما إذا كان هناك مفتاح محدد موجوداً في HashMap. وهي تعيد القيمة true أو false.
على سبيل المثال، دعنا نملأ HashMap أولاً:
HashMap<String, Integer> scores = new HashMap<>();
scores.put("Alice", 95);والآن يمكننا التحقق مما إذا كان المفتاح موجوداً:
boolean exists1 = scores.containsKey("Alice");
// exists1 هو الآن true
boolean exists2 = scores.containsKey("Bob");
// exists2 هو الآن falseالتحدي
سهلقم بإنشاء دالة تسمى keyChecker تأخذ وسيطين:
HashMapتسمىrandomValuesحيث تكون المفاتيح عبارة عن سلاسل نصية عشوائية والقيم عبارة عن قيم عشوائية.- مصفوفة
keysتمثل مفاتيح نصية.
يجب أن تعيد الدالة عدد المفاتيح من الـ <strong>array</strong> الموجودة في الـ HashMap
جرّب بنفسك
// --- وحدات لتحويل سلسلة نصية لـ 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 int keyChecker(HashMap<String, Integer> randomValues, String[] keys) {
// اكتب كودك بالأسفل
}
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String hashMapString = scanner.nextLine();
String arrayString = scanner.nextLine();
// تحويل سلسلة نصية لـ HashMap إلى HashMap
Type mapType = new TypeToken<HashMap<String, Integer>>(){}.getType();
HashMap<String, Integer> randomValues = new Gson().fromJson(hashMapString, mapType);
// تحويل سلسلة نصية لـ Array إلى Array
String[] keys = new Gson().fromJson(arrayString, String[].class);
int result = keyChecker(randomValues, keys);
System.out.println(result);
}
}
يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس Logic & Flow
1المصفوفات متعددة الأبعاد
أساسيات المصفوفات ثنائية الأبعادالوصول إلى عناصر المصفوفات ثنائية الأبعادالحلقات المتداخلة مع المصفوفات ثنائية الأبعادمراجعة - المصفوفات ثنائية الأبعادجمع وطرح المصفوفاتالمصفوفات المتعرجة (Jagged Arrays)المصفوفات ثلاثية الأبعاد وما بعدهاأنماط المصفوفات ثنائية الأبعاد الشائعةمراجعة - كل شيء عن المصفوفات2HashMap الجزء الأول
ما هو الـ HashMap؟تعريف الـ HashMapالوصول إلى القيمالتحقق من وجود المفتاحتعديل القواميسملخص - HashMap3HashMap الجزء الثاني
دوال HashMapالتكرار باستخدام keySet()التكرار باستخدام entrySet()HashMap متداخلمراجعة - إدارة المستودعمراجعة - عمليات HashMap6التحكم المتقدم في تدفق البرنامج
العبارات المعنونةتعبير Switchمطابقة الأنماطجمل الحمايةمراجعة - تدفق التحكمتدرّب بنفسك: مترجم Java عبر الإنترنت