Menu
Coddy logo textTech

Özet - HashMap

Coddy'nin Java Journey'sinin Mantık & Akış bölümünün bir parçası — ders 15 / 59.

challenge icon

Görev

Kolay

processHashMap adında bir metod oluşturun ki bu, HashMap<String, Integer> ve String işlemler dizisi alsın, ardından aşağıdaki eylemleri gerçekleştirsin:

1. GET İşlemi

  • Biçim: "GET key"
  • Eylem:
    • Anahtar varsa: Değeri yazdırın
    • Anahtar yoksa: "Not found" yazdırın

2. CHECK İşlemi

  • Biçim: "CHECK key"
  • Eylem:
    • Anahtar varsa: "Exists" yazdırın
    • Anahtar yoksa: "Not found" yazdırın

3. MODIFY İşlemi

  • Biçim: "MODIFY key targetValue"
  • Eylem:
    • Anahtar varsa VE mevcut değeri targetValue'ye eşitse: Değeri targetValue + 1 olarak güncellemek için replace() kullanın
    • Anahtar varsa AMA mevcut değeri targetValue'den farklıysa: Anahtarı silmek için remove() kullanın
    • Anahtar yoksa: targetValue'yi değeri olarak eklemek için put() kullanın
  • Not: MODIFY işlemlerinde hiçbir şey yazdırmayın

Son Çıktı:

Tüm işlemler işlendikten sonra, metod değiştirilmiş HashMap'i döndürmelidir. main metodu bunu JSON formatında yazdıracaktır.

Kendin dene

// --- hashmap dizgisini hashmap'e dönüştürmek için modüller ---
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) {
        // Kodunuzu buraya yazın
    }

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

        // HashMap dizgisini HashMap'e dönüştür
        Type mapType = new TypeToken<HashMap<String, Integer>>(){}.getType();
        HashMap<String, Integer> data = new Gson().fromJson(hashMapString, mapType);

        // Array dizgisini Array'e dönüştür
        String[] operations = new Gson().fromJson(operationsString, String[].class);

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

Mantık & Akış bölümündeki tüm dersler