Menu
Coddy logo textTech

복습 - 창고 관리

Coddy Java 여정의 논리와 흐름 섹션에 포함된 레슨 — 59개 중 20번째.

challenge icon

챌린지

쉬움

<strong>manageWarehouse</strong>라는 이름을 가진 메서드를 생성하세요. 이 메서드는 두 개의 인수를 받습니다:

  1. warehouse라는 이름의 <strong>warehouse</strong> HashMap으로, 다음을 포함합니다:
    • 제품 이름을 나타냅니다 (String).
    • 수량을 나타냅니다 (Integer).
  2. 작업 목록(<strong>String[] operations</strong>)으로, 각 문자열은 다음 형식 중 하나를 따릅니다:
    • "ADD product quantity" → 주어진 수량을 기존 제품에 추가합니다 (존재하지 않으면 생성).
    • "REMOVE product quantity" → 제품의 수량을 감소시킵니다. 수량이 0 또는 음수가 되면 제품을 제거합니다.
    • "CHECK product" → 제품이 존재하면 true를 출력하고, 그렇지 않으면 false를 출력합니다.
    • "PRINT" → 모든 제품과 그 수량을 다음 형식으로 출력합니다:

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

StringInteger로 변환하려면 다음을 사용합니다:

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

Integer.valueOf()는 계산에 사용할 수 있는 정수를 얻을 수 있도록 보장합니다.

직접 해보기

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) {
        // 여기에 코드를 작성하세요
    }

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

        // JSON 문자열을 HashMap으로 변환
        Type mapType = new TypeToken<HashMap<String, Integer>>(){}.getType();
        HashMap<String, Integer> warehouse = new Gson().fromJson(warehouseString, mapType);

        // JSON 문자열을 배열로 변환
        String[] operations = new Gson().fromJson(operationsString, String[].class);

        manageWarehouse(warehouse, operations);
    }
}

논리와 흐름의 모든 레슨