Menu
Coddy logo textTech

Sprawdzanie, czy klucz istnieje

Część sekcji Logika i przepływ sterowania ścieżki Java w Coddy. Lekcja 13 z 59.

Metoda containsKey(key) sprawdza, czy w obiekcie HashMap istnieje konkretny klucz. Zwraca true lub false.

Na przykład najpierw wypełnijmy HashMap:

HashMap<String, Integer> scores = new HashMap<>();
scores.put("Alice", 95);

A teraz możemy sprawdzić, czy klucz istnieje:

boolean exists1 = scores.containsKey("Alice");
// exists1 ma teraz wartość true
boolean exists2 = scores.containsKey("Bob");
// exists2 ma teraz wartość false
challenge icon

Wyzwanie

Łatwy

Utwórz metodę o nazwie keyChecker, która przyjmuje dwa argumenty:

  1. HashMap o nazwie randomValues, w której kluczami są losowe ciągi znaków, a wartościami losowe liczby całkowite.
  2. Tablicę keys reprezentującą klucze będące ciągami znaków.

Metoda powinna zwracać liczbę kluczy z keys, które istnieją w HashMap

Spróbuj swoich sił

// --- Moduły do konwersji ciągu znaków reprezentującego hashmapę na 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 int keyChecker(HashMap<String, Integer> randomValues, String[] keys) {
        // Napisz swój kod poniżej
    }

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

        // Przekonwertuj String reprezentujący HashMap na HashMap
        Type mapType = new TypeToken<HashMap<String, Integer>>(){}.getType();
        HashMap<String, Integer> randomValues = new Gson().fromJson(hashMapString, mapType);

        // Przekonwertuj String reprezentujący Array na Array
        String[] keys = new Gson().fromJson(arrayString, String[].class);

        int result = keyChecker(randomValues, keys);
        System.out.println(result);
    }
}
quiz iconSprawdź się

Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.

Wszystkie lekcje w sekcji Logika i przepływ sterowania

Poćwicz samodzielnie: Kompilator Java online