Menu
CoddyTech

entrySet() ile Yineleme

Coddy'nin Java Journey'sinin Mantık & Akış bölümünün bir parçası. Ders 18 / 59.

entrySet() ile yineleme, HashMap'ten Map.Entry nesnelerinden oluşan bir küme elde etmek anlamına gelir. Her Map.Entry, hem anahtarı hem de ona karşılık gelen değeri sağlar; bu da keySet() ile gereken ek aramayı önlediğinden daha verimlidir.

Bir HashMap oluştur:

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

entrySet() kullanarak yineleme yapın:

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

Görev

Kolay

printInventoryEntrySet adlı, Scanner aracılığıyla okunan bir JSON dizgesinden HashMap (anahtar olarak ürün adlarını, değer olarak miktarları içeren) alan bir yöntem oluşturun. Yönteminiz, entrySet() yöntemini kullanarak HashMap üzerinde yineleme yapmalı ve her anahtar-değer çiftini şu biçimde yazdırmalıdır:

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

Kendin dene

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() kullanarak kodunuzu buraya yazın
    }

    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        String inventoryString = scanner.nextLine();

        // JSON dizesini HashMap<String, Integer> türüne dönüştürün
        Type mapType = new TypeToken<HashMap<String, Integer>>(){}.getType();
        HashMap<String, Integer> inventory = new Gson().fromJson(inventoryString, mapType);

        printInventoryEntrySet(inventory);
    }
}
quiz iconKendini test et

Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.

Mantık & Akış bölümündeki tüm dersler

Kendi başına pratik yap: Online Java derleyicisi