التكرار باستخدام keySet()
جزء من قسم المنطق وتدفق التنفيذ في رحلة Java على Coddy. الدرس 17 من 59.
يعني التكرار باستخدام keySet() الحصول على مجموعة تضم جميع المفاتيح في HashMap، ثم استخدام الطريقة get() لجلب القيم المقابلة. هذا بسيط ويعمل جيدًا مع الخرائط الصغيرة.
أولًا، أنشئ HashMap للمنتجات:
HashMap<String, Integer> inventory = new HashMap<>();
inventory.put("Laptop", 10);
inventory.put("Mouse", 50);
inventory.put("Keyboard", 30);الآن، كرّر باستخدام keySet():
for (String product : inventory.keySet()) {
int quantity = inventory.get(product);
System.out.println("Product: " +
product + ", Quantity: " + quantity);
}
// Product: Laptop, Quantity: 10
// Product: Mouse, Quantity: 50
// Product: Keyboard, Quantity: 30التحدي
سهلأنشئ طريقة باسم printInventoryKeySet تقبل HashMap (حيث تكون المفاتيح أسماء المنتجات والقيم كمياتها) من سلسلة JSON تُقرأ باستخدام Scanner. ينبغي أن تكرّر طريقتك عبر HashMap باستخدام الطريقة keySet() وتطبع كل زوج من مفتاح وقيمة بالتنسيق التالي:
Product: <product name>, Quantity: <quantity>جرّب بنفسك
import java.util.HashMap;
import java.util.Scanner;
import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;
import java.lang.reflect.Type;
public class Main {
public static void printInventoryKeySet(HashMap<String, Integer> inventory) {
// اكتب شيفرتك هنا باستخدام keySet()
}
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
// اقرأ سلسلة JSON المدخلة التي تمثّل HashMap الخاص بالمخزون
String inventoryString = scanner.nextLine();
// حوّل سلسلة JSON إلى HashMap<String, Integer>
Type mapType = new TypeToken<HashMap<String, Integer>>(){}.getType();
HashMap<String, Integer> inventory = new Gson().fromJson(inventoryString, mapType);
printInventoryKeySet(inventory);
}
}يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس المنطق وتدفق التنفيذ
1المصفوفات متعددة الأبعاد
أساسيات المصفوفات ثنائية الأبعادالوصول إلى عناصر المصفوفات ثنائية الأبعادالحلقات المتداخلة مع المصفوفات ثنائية الأبعادمراجعة - المصفوفات ثنائية الأبعادجمع وطرح المصفوفاتالمصفوفات المتعرجة (Jagged Arrays)المصفوفات ثلاثية الأبعاد وما بعدهاأنماط المصفوفات ثنائية الأبعاد الشائعةمراجعة - كل شيء عن المصفوفات2HashMap الجزء الأول
ما هو الـ HashMap؟تعريف الـ HashMapالوصول إلى القيمالتحقق من وجود المفتاحتعديل القواميسملخص - HashMap3HashMap الجزء الثاني
دوال HashMapالتكرار باستخدام keySet()التكرار باستخدام entrySet()HashMap متداخلمراجعة - إدارة المستودعمراجعة - عمليات HashMap6التحكم المتقدم في تدفق البرنامج
العبارات المعنونةتعبير Switchمطابقة الأنماطجمل الحمايةمراجعة - تدفق التحكمتدرّب بنفسك: مترجم Java عبر الإنترنت