Повторение - Управление складом
Часть раздела Логика и управление потоком путешествия по Java на Coddy — урок 20 из 59.
Задание
ЛегкоСоздайте метод с именем <strong>manageWarehouse</strong>, который принимает два аргумента:
- HashMap с именем
<strong>warehouse</strong>, где:- Ключи представляют названия продуктов (
String). - Значения представляют количества (
Integer).
- Ключи представляют названия продуктов (
- Список операций (
<strong>String[] operations</strong>), где каждая строка следует одному из этих форматов:"ADD product quantity"→ Добавляет указанное количество к существующему продукту (или создает его, если он отсутствует)."REMOVE product quantity"→ Уменьшает количество продукта. Если количество становится 0 или отрицательным, удалите продукт."CHECK product"→ Выводитtrue, если продукт существует, иначеfalse."PRINT"→ Выводит все продукты и их количества в формате:Product: Laptop, Quantity: 10 Product: Mouse, Quantity: 50
Чтобы преобразовать String в Integer, мы используем:
String quantityString = "25";
int quantity = Integer.valueOf(quantityString);
System.out.println(quantity + 5); // Output: 30Integer.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);
}
}Все уроки раздела Логика и управление потоком
1Многомерные массивы
Основы 2D-массивовДоступ к элементам 2D-массиваВложенные циклы с 2D-массивамиПовторение - 2D-массивыСложение и вычитание матрицРваные массивы3D-массивы и вышеРаспространённые паттерны 2D-массивовПовторение - всё о массивах2HashMap Часть 1
Что такое HashMap?Объявление HashMapДоступ к значениямПроверка существования ключаИзменение словарейИтоги - HashMap3HashMap. Часть 2
Методы HashMapИтерация с keySet()Итерация с entrySet()Вложенный HashMapПовторение - Управление складомПовторение - Операции HashMap6Продвинутое управление потоком
Операторы метокВыражение switchСопоставление шаблоновОхранные клаузыИтоги - управление потоком9Проект - Счетчик уникальных слов
Ввод и хранение текстаОбработка слов