Récapitulatif - HashMap
Fait partie de la section Logique & Flux du Journey Java de Coddy — leçon 15 sur 59.
Défi
FacileCréez une méthode nommée processHashMap qui prend une HashMap<String, Integer> et un tableau d'opérations String, puis effectue les actions suivantes :
1. Opération GET
- Format :
"GET key" - Action :
- Si la clé existe : Affichez la valeur
- Si la clé n'existe pas : Affichez
"Not found"
2. Opération CHECK
- Format :
"CHECK key" - Action :
- Si la clé existe : Affichez
"Exists" - Si la clé n'existe pas : Affichez
"Not found"
- Si la clé existe : Affichez
3. Opération MODIFY
- Format :
"MODIFY key targetValue" - Action :
- Si la clé existe ET sa valeur actuelle est égale à targetValue : Utilisez
replace()pour mettre à jour la valeur à targetValue + 1 - Si la clé existe MAIS sa valeur actuelle est différente de targetValue : Utilisez
remove()pour supprimer la clé - Si la clé n'existe pas : Utilisez
put()pour l'ajouter avec targetValue comme sa valeur
- Si la clé existe ET sa valeur actuelle est égale à targetValue : Utilisez
- Note : N'imprimez rien pendant les opérations MODIFY
Sortie finale :
Après traitement de toutes les opérations, la méthode doit retourner la HashMap modifiée. La méthode main l'imprimera au format JSON.
Essayez vous-même
// --- Modules pour convertir une chaîne de hashmap en hashmap ---
import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;
import java.lang.reflect.Type;
// -----------------------------
import java.util.HashMap;
import java.util.Scanner;
public class Main {
public static HashMap<String, Integer> processHashMap(HashMap<String, Integer> data, String[] operations) {
// Écrivez votre code ici
}
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String hashMapString = scanner.nextLine();
String operationsString = scanner.nextLine();
// Convertir la chaîne de HashMap en HashMap
Type mapType = new TypeToken<HashMap<String, Integer>>(){}.getType();
HashMap<String, Integer> data = new Gson().fromJson(hashMapString, mapType);
// Convertir la chaîne d'Array en Array
String[] operations = new Gson().fromJson(operationsString, String[].class);
HashMap<String, Integer> result = processHashMap(data, operations);
System.out.println(new Gson().toJson(result));
}
}
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