Mit keySet() iterieren
Teil des Abschnitts Logik & Ablauf der Java-Journey von Coddy — Lektion 17 von 59.
Iterieren mit keySet() bedeutet, dass Sie ein Set aller Schlüssel in der HashMap erhalten und dann die get()-Methode verwenden, um die entsprechenden Werte abzurufen. Das ist einfach und funktioniert gut für kleine Maps.
Zuerst erstellen Sie eine HashMap von Produkten:
HashMap<String, Integer> inventory = new HashMap<>();
inventory.put("Laptop", 10);
inventory.put("Mouse", 50);
inventory.put("Keyboard", 30);Jetzt iterieren mit 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: 30Aufgabe
EinfachErstellen Sie eine Methode mit dem Namen <strong>printInventoryKeySet</strong>, die eine HashMap (bei der Schlüssel Produktnamen und Werte Mengen sind) aus einem über Scanner gelesenen JSON-String akzeptiert. Ihre Methode sollte über die HashMap iterieren, indem sie die keySet()-Methode verwendet, und jedes Schlüssel-Wert-Paar im Format ausgeben:
Product: <product name>, Quantity: <quantity>Spickzettel
Verwenden Sie keySet(), um über HashMap-Schlüssel zu iterieren, und get(), um die entsprechenden Werte abzurufen:
HashMap<String, Integer> inventory = new HashMap<>();
inventory.put("Laptop", 10);
inventory.put("Mouse", 50);
inventory.put("Keyboard", 30);
for (String product : inventory.keySet()) {
int quantity = inventory.get(product);
System.out.println("Product: " + product + ", Quantity: " + quantity);
}Probier es selbst
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) {
// Schreibe hier deinen Code mit keySet()
}
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
// Liest JSON-String-Eingabe, die die inventory HashMap repräsentiert
String inventoryString = scanner.nextLine();
// Konvertiert JSON-String zu HashMap<String, Integer>
Type mapType = new TypeToken<HashMap<String, Integer>>(){}.getType();
HashMap<String, Integer> inventory = new Gson().fromJson(inventoryString, mapType);
printInventoryKeySet(inventory);
}
}Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
Alle Lektionen in Logik & Ablauf
1Mehrdimensionale Arrays
Grundlagen der 2D-ArraysZugriff auf 2D-Array-ElementeVerschachtelte Schleifen mit 2D-ArraysZusammenfassung - 2D-ArraysMatrixaddition & SubtraktionJagged Arrays3D-Arrays und darüber hinausGängige 2D-Array-MusterZusammenfassung - Alles über Arrays2HashMap Teil 1
Was ist eine HashMap?Eine HashMap deklarierenWerte abrufenPrüfen, ob ein Schlüssel existiertWörterbücher modifizierenZusammenfassung - HashMap3HashMap Teil 2
HashMap-MethodenMit keySet() iterierenMit entrySet() iterierenVerschachtelte HashMapZusammenfassung - Lager verwaltenZusammenfassung - HashMap-Operationen6Erweiterter Steuerungsfluss
Beschriftete AnweisungenSwitch-AusdruckMusterabgleichSchutzklauselnZusammenfassung - Steuerungsfluss9Projekt - Einzigartiger Wortzähler
Texteingabe und SpeicherungWortverarbeitung