Menu
Coddy logo textTech

Проверка существования ключа

Часть раздела Логика и управление потоком путешествия по Java на Coddy — урок 13 из 59.

Метод containsKey(key) проверяет, существует ли конкретный ключ в HashMap. Он возвращает true или false.

Например, сначала заполним HashMap:

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

И теперь мы можем проверить, существует ли ключ:

boolean exists1 = scores.containsKey("Alice");
// exists1 is now true

boolean exists2 = scores.containsKey("Bob");
// exists2 is now false
challenge icon

Задание

Легко

Создайте метод с именем keyChecker, который принимает два аргумента:

  1. HashMap с именем randomValues, где ключи — случайные строки, а значения — случайные значения.
  2. Массив keys, представляющий строковые ключи.

Метод должен возвращать количество ключей из <strong>array</strong>, которые существуют в HashMap

Шпаргалка

Метод containsKey(key) проверяет, существует ли конкретный ключ в HashMap, и возвращает true или false:

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

boolean exists1 = scores.containsKey("Alice");
// exists1 is now true

boolean exists2 = scores.containsKey("Bob");
// exists2 is now false

Попробуйте сами

// --- Модули для преобразования строки хешмапа в хешмап ---
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) {
        // Напишите ваш код ниже
    }

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

        // Преобразование строки HashMap в HashMap
        Type mapType = new TypeToken<HashMap<String, Integer>>(){}.getType();
        HashMap<String, Integer> randomValues = new Gson().fromJson(hashMapString, mapType);

        // Преобразование строки массива в массив
        String[] keys = new Gson().fromJson(arrayString, String[].class);

        int result = keyChecker(randomValues, keys);
        System.out.println(result);
    }
}
quiz iconПроверьте себя

В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.

Все уроки раздела Логика и управление потоком