Menu
Coddy logo textTech

Zusammenfassung - HashMap

Teil des Abschnitts Logik & Ablauf der Java-Journey von Coddy — Lektion 15 von 59.

challenge icon

Aufgabe

Einfach

Erstellen Sie eine Methode namens processHashMap, die eine HashMap<String, Integer> und ein Array von String-Operationen nimmt und dann die folgenden Aktionen ausführt:

1. GET-Operation

  • Format: "GET key"
  • Aktion:
    • Wenn der Schlüssel existiert: Den Wert ausgeben
    • Wenn der Schlüssel nicht existiert: "Not found" ausgeben

2. CHECK-Operation

  • Format: "CHECK key"
  • Aktion:
    • Wenn der Schlüssel existiert: "Exists" ausgeben
    • Wenn der Schlüssel nicht existiert: "Not found" ausgeben

3. MODIFY-Operation

  • Format: "MODIFY key targetValue"
  • Aktion:
    • Wenn der Schlüssel existiert UND sein aktueller Wert targetValue entspricht: Verwenden Sie replace(), um den Wert auf targetValue + 1 zu aktualisieren
    • Wenn der Schlüssel existiert, ABER sein aktueller Wert von targetValue abweicht: Verwenden Sie remove(), um den Schlüssel zu löschen
    • Wenn der Schlüssel nicht existiert: Verwenden Sie put(), um ihn mit targetValue als Wert hinzuzufügen
  • Hinweis: Geben Sie während MODIFY-Operationen nichts aus

Endausgabe:

Nach der Verarbeitung aller Operationen sollte die Methode die modifizierte HashMap zurückgeben. Die main-Methode wird sie im JSON-Format ausgeben.

Probier es selbst

// --- Module zum Konvertieren von HashMap-String zu 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) {
        // Schreibe deinen Code hier
    }

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

        // HashMap-String zu HashMap konvertieren
        Type mapType = new TypeToken<HashMap<String, Integer>>(){}.getType();
        HashMap<String, Integer> data = new Gson().fromJson(hashMapString, mapType);

        // Array-String zu Array konvertieren
        String[] operations = new Gson().fromJson(operationsString, String[].class);

        HashMap<String, Integer> result = processHashMap(data, operations);
        System.out.println(new Gson().toJson(result));
    }
}

Alle Lektionen in Logik & Ablauf