Menu
Coddy logo textTech

Powtórka — zarządzanie magazynem

Część sekcji Logika i przepływ sterowania ścieżki Java w Coddy. Lekcja 20 z 59.

challenge icon

Wyzwanie

Łatwy

Utwórz metodę o nazwie <strong>manageWarehouse</strong>, która przyjmuje dwa argumenty:

  1. HashMap o nazwie <strong>warehouse</strong>, w której:
    • Klucze reprezentują nazwy produktów (String).
    • Wartości reprezentują ilości (Integer).
  2. Lista operacji (<strong>String[] operations</strong>), w której każdy ciąg znaków ma jeden z następujących formatów:
    • "ADD product quantity" → Dodaje podaną ilość do istniejącego produktu (lub tworzy go, jeśli jeszcze nie istnieje).
    • "REMOVE product quantity" → Zmniejsza ilość produktu. Jeśli ilość wynosi 0 lub mniej, usuń produkt.
    • "CHECK product" → Wyświetla true, jeśli produkt istnieje, w przeciwnym razie false.
    • "PRINT" → Wyświetla wszystkie produkty i ich ilości w formacie:

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

Aby przekonwertować String na Integer, używamy:

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

Integer.valueOf() pozwala uzyskać liczbę całkowitą, której możemy używać w obliczeniach.

Spróbuj swoich sił

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) {
        // Wpisz tutaj swój kod
    }

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

        // Przekształć ciąg znaków JSON w HashMap
        Type mapType = new TypeToken<HashMap<String, Integer>>(){}.getType();
        HashMap<String, Integer> warehouse = new Gson().fromJson(warehouseString, mapType);

        // Przekształć ciąg znaków JSON w Array
        String[] operations = new Gson().fromJson(operationsString, String[].class);

        manageWarehouse(warehouse, operations);
    }
}

Wszystkie lekcje w sekcji Logika i przepływ sterowania

Poćwicz samodzielnie: Kompilator Java online