Menu
CoddyTech

Ôn tập: Quản lý kho hàng

Thuộc phần Logic và luồng chương trình trong hành trình Java của Coddy. Bài học 20 trên 59.

challenge icon

Thử thách

Dễ

Tạo một phương thức có tên manageWarehouse nhận hai đối số:

  1. Một HashMap có tên warehouse trong đó:
    • Các khóa biểu thị tên sản phẩm (String).
    • Các giá trị biểu thị số lượng (Integer).
  2. Một danh sách thao tác (String[] operations), trong đó mỗi chuỗi tuân theo một trong các định dạng sau:
    • "ADD product quantity" → Cộng số lượng đã cho vào sản phẩm hiện có (hoặc tạo sản phẩm nếu chưa có).
    • "REMOVE product quantity" → Giảm số lượng của sản phẩm. Nếu số lượng trở thành 0 hoặc âm, hãy xóa sản phẩm.
    • "CHECK product" → In ra true nếu sản phẩm tồn tại, nếu không thì in ra false.
    • "PRINT" → In ra tất cả sản phẩm và số lượng của chúng theo định dạng:

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

Để chuyển một String thành một Integer, ta dùng:

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

Integer.valueOf() đảm bảo ta nhận được một số nguyên có thể dùng trong các phép tính.

Tự làm thử

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) {
        // Viết code của bạn ở đây
    }

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

        // Chuyển chuỗi JSON thành HashMap
        Type mapType = new TypeToken<HashMap<String, Integer>>(){}.getType();
        HashMap<String, Integer> warehouse = new Gson().fromJson(warehouseString, mapType);

        // Chuyển chuỗi JSON thành mảng (array)
        String[] operations = new Gson().fromJson(operationsString, String[].class);

        manageWarehouse(warehouse, operations);
    }
}

Tất cả bài học trong Logic và luồng chương trình

Tự luyện tập: Trình biên dịch Java online