Menu
Coddy logo textTech

Riepilogo - Gestire il magazzino

Fa parte della sezione Logica e flusso del percorso Java di Coddy. Lezione 20 di 59.

challenge icon

Sfida

Facile

Crea un metodo chiamato <strong>manageWarehouse</strong> che accetta due argomenti:

  1. Una HashMap denominata <strong>warehouse</strong> in cui:
    • Le chiavi rappresentano i nomi dei prodotti (String).
    • I valori rappresentano le quantità (Integer).
  2. Un elenco di operazioni (<strong>String[] operations</strong>) in cui ogni stringa segue uno di questi formati:
    • "ADD product quantity" → Aggiunge la quantità indicata al prodotto esistente (oppure lo crea se non è presente).
    • "REMOVE product quantity" → Diminuisce la quantità del prodotto. Se la quantità diventa 0 o negativa, rimuove il prodotto.
    • "CHECK product" → Stampa true se il prodotto esiste, altrimenti false.
    • "PRINT" → Stampa tutti i prodotti e le rispettive quantità nel formato:

      Product: Laptop, Quantity: 10
      Product: Mouse, Quantity: 50

Per convertire una String in un Integer, usiamo:

String quantityString = "25";  
int quantity = Integer.valueOf(quantityString);  
System.out.println(quantity + 5); // Output: 30

Integer.valueOf() assicura che otteniamo un intero che possiamo usare nei calcoli.

Provalo tu

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 manageWarehouse(HashMap<String, Integer> warehouse, String[] operations) {
        // Scrivi qui il tuo codice
    }

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

        // Converti la stringa JSON in HashMap
        Type mapType = new TypeToken<HashMap<String, Integer>>(){}.getType();
        HashMap<String, Integer> warehouse = new Gson().fromJson(warehouseString, mapType);

        // Converti la stringa JSON in Array
        String[] operations = new Gson().fromJson(operationsString, String[].class);

        manageWarehouse(warehouse, operations);
    }
}

Tutte le lezioni di Logica e flusso

Esercitati da solo: Compilatore Java online