Iterare con keySet()
Fa parte della sezione Logica e flusso del percorso Java di Coddy. Lezione 17 di 59.
Iterare con keySet() significa ottenere un insieme di tutte le chiavi nella HashMap e poi usare il metodo get() per recuperare i valori corrispondenti. È semplice e funziona bene per le mappe piccole.
Per prima cosa, crea una HashMap di prodotti:
HashMap<String, Integer> inventory = new HashMap<>();
inventory.put("Laptop", 10);
inventory.put("Mouse", 50);
inventory.put("Keyboard", 30);Ora, esegui un'iterazione usando 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: 30Sfida
FacileCrea un metodo chiamato <strong>printInventoryKeySet</strong> che accetti un HashMap (in cui le chiavi sono nomi di prodotti e i valori sono quantità) da una stringa JSON letta tramite Scanner. Il tuo metodo dovrebbe iterare sull'HashMap usando il metodo keySet() e stampare ogni coppia chiave-valore nel formato:
Product: <product name>, Quantity: <quantity>Provalo tu
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) {
// Scrivi qui il tuo codice usando keySet()
}
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
// Leggi la stringa JSON in input che rappresenta la HashMap dell'inventario
String inventoryString = scanner.nextLine();
// Converti la stringa JSON in HashMap<String, Integer>
Type mapType = new TypeToken<HashMap<String, Integer>>(){}.getType();
HashMap<String, Integer> inventory = new Gson().fromJson(inventoryString, mapType);
printInventoryKeySet(inventory);
}
}Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.
Tutte le lezioni di Logica e flusso
1Array multidimensionali
Concetti di base degli array 2DAccesso agli elementi degli array 2DCicli annidati con array 2DRiepilogo - Array 2DAddizione e sottrazione di matriciArray irregolariArray 3D e oltreSchemi comuni degli array 2DRiepilogo - Tutto sugli array4HashSet Parte 1
Che cos'è un HashSet?Aggiungere un elementoRimuovere un elementoVerificare se un elemento esisteVuoto e dimensioneSvuotare e clonareRipasso - HashSet7Gestione di base degli errori
Nozioni di base su try-catchBlocco finallyLancio di eccezioniEccezioni personalizzate2HashMap Parte 1
Che cos'è una HashMap?Dichiarare una HashMapAccedere ai valoriVerificare se una chiave esisteModificare i dizionariRiepilogo - HashMap3HashMap Parte 2
Metodi di HashMapIterare con keySet()Iterare con entrySet()HashMap annidateRiepilogo - Gestire il magazzinoRiepilogo - Operazioni con HashMap6Flusso di controllo avanzato
Istruzioni con etichettaEspressione switchCorrispondenza dei patternClausole guardiaRiepilogo - Flusso di controllo9Progetto - Contatore di parole uniche
Inserimento e memorizzazione del testoElaborazione delle paroleEsercitati da solo: Compilatore Java online