Récapitulatif - Gérer l'entrepôt
Fait partie de la section Logique & Flux du Journey Java de Coddy — leçon 20 sur 59.
Défi
FacileCréez une méthode nommée <strong>manageWarehouse</strong> qui prend deux arguments :
- Un HashMap nommé
<strong>warehouse</strong>où :- Les clés représentent les noms de produits (
String). - Les valeurs représentent les quantités (
Integer).
- Les clés représentent les noms de produits (
- Une liste d'opérations (
<strong>String[] operations</strong>) où chaque chaîne suit l'un de ces formats :"ADD product quantity"→ Ajoute la quantité donnée au produit existant (ou le crée s'il n'est pas présent)."REMOVE product quantity"→ Diminue la quantité du produit. Si la quantité devient 0 ou négative, supprimez le produit."CHECK product"→ Affichetruesi le produit existe, sinonfalse."PRINT"→ Affiche tous les produits et leurs quantités dans le format :Product: Laptop, Quantity: 10 Product: Mouse, Quantity: 50
Pour convertir un String en Integer, nous utilisons :
String quantityString = "25";
int quantity = Integer.valueOf(quantityString);
System.out.println(quantity + 5); // Output: 30Integer.valueOf() garantit que nous obtenons un entier que nous pouvons utiliser dans les calculs.
Essayez vous-même
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) {
// Écrivez votre code ici
}
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String warehouseString = scanner.nextLine();
String operationsString = scanner.nextLine();
// Convertir la chaîne JSON en HashMap
Type mapType = new TypeToken<HashMap<String, Integer>>(){}.getType();
HashMap<String, Integer> warehouse = new Gson().fromJson(warehouseString, mapType);
// Convertir la chaîne JSON en tableau
String[] operations = new Gson().fromJson(operationsString, String[].class);
manageWarehouse(warehouse, operations);
}
}Toutes les leçons de Logique & Flux
1Tableaux multidimensionnels
Bases des tableaux 2DAccès aux éléments des tableaux 2DBoucles imbriquées avec les tableaux 2DRécapitulatif - Tableaux 2DAddition et soustraction de matricesTableaux irréguliersTableaux 3D et au-delàMotifs courants des tableaux 2DRécapitulatif - Tout sur les tableaux4HashSet Partie 1
Qu'est-ce qu'un HashSet ?Ajouter un ÉlémentSupprimer un ÉlémentVérifier si un Élément ExisteVide et TailleVider et ClonerRécapitulatif - HashSet7Gestion des erreurs de base
Bases du try-catchBloc finallyLever des exceptionsExceptions personnalisées2HashMap Partie 1
Qu'est-ce qu'une HashMap ?Déclarer une HashMapAccéder aux ValeursVérifier si une Clé ExisteModifier les DictionnairesRécapitulatif - HashMap3HashMap Partie 2
Méthodes HashMapItérer avec keySet()Itérer avec entrySet()HashMap imbriquéRécapitulatif - Gérer l'entrepôtRécapitulatif - Opérations HashMap6Flux de contrôle avancé
Instructions étiquetéesExpression switchAppariement de motifsClauses de gardeRécapitulatif - Flux de contrôle9Projet - Compteur de Mots Uniques
Entrée de Texte et StockageTraitement des Mots