Menu
CoddyTech
flag Ar iconالعربيةdown icon

التكرار باستخدام entrySet()

جزء من قسم المنطق وتدفق التنفيذ في رحلة Java على Coddy. الدرس 18 من 59.

يعني التكرار باستخدام entrySet() الحصول على مجموعة من كائنات Map.Entry من HashMap. يوفّر كل كائن Map.Entry المفتاح والقيمة المقابلة له، مما يجعله أكثر كفاءة لأنه يتجنب عملية البحث الإضافية المطلوبة مع keySet().

أنشئ HashMap:

HashMap<String, Integer> inventory = new HashMap<>();
inventory.put("Laptop", 10);
inventory.put("Mouse", 50);
inventory.put("Keyboard", 30);

كرّر باستخدام entrySet():

for (Map.Entry<String, Integer> entry : inventory.entrySet()) {
   System.out.println("Product: " +
   entry.getKey() + ", Quantity: " +
   entry.getValue());
}
// Product: Laptop, Quantity: 10
// Product: Mouse, Quantity: 50
// Product: Keyboard, Quantity: 30
challenge icon

التحدي

سهل

أنشئ طريقة باسم <strong>printInventoryEntrySet</strong> تقبل HashMap (مع أسماء المنتجات كمفاتيح والكميات كقيم) من سلسلة JSON تُقرأ باستخدام Scanner. يجب أن تتكرر طريقتك على HashMap باستخدام طريقة entrySet() وتطبع كل زوج من مفتاح وقيمة بالتنسيق:

Product: <product name>, Quantity: <quantity>

جرّب بنفسك

import java.util.HashMap;
import java.util.Map;
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 printInventoryEntrySet(HashMap<String, Integer> inventory) {
        // اكتب الكود الخاص بك هنا باستخدام entrySet()
    }

    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        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);

        printInventoryEntrySet(inventory);
    }
}
quiz iconاختبر نفسك

يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.

جميع دروس المنطق وتدفق التنفيذ

تدرّب بنفسك: مترجم Java عبر الإنترنت