Menu
Coddy logo textTech

keySet() ile Yineleme

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

keySet() ile yineleme yapmak, HashMap içindeki tüm anahtarları içeren bir küme elde etmek ve ardından karşılık gelen değerleri almak için get() yöntemini kullanmak anlamına gelir. Bu basittir ve küçük haritalar için iyi çalışır.

İlk olarak, ürünlerden oluşan bir HashMap oluşturun:

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

Şimdi, keySet() kullanarak yineleyin:

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
challenge icon

Görev

Kolay

<strong>printInventoryKeySet</strong> adlı, Scanner aracılığıyla okunan bir JSON dizesinden bir HashMap (anahtarların ürün adları ve değerlerin miktarlar olduğu) kabul eden bir metot oluşturun. Metodunuz, keySet() metodunu 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.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) {
        // Kodunuzu burada keySet() kullanarak yazın
    }

    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        // Envanter HashMap'ini temsil eden JSON dizesi girişini oku
        String inventoryString = scanner.nextLine();

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

        printInventoryKeySet(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