Проверка существования ключа
Часть раздела Логика и управление потоком путешествия по 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Задание
ЛегкоСоздайте метод с именем keyChecker, который принимает два аргумента:
HashMapс именемrandomValues, где ключи — случайные строки, а значения — случайные значения.- Массив
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);
}
}
В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Логика и управление потоком
1Многомерные массивы
Основы 2D-массивовДоступ к элементам 2D-массиваВложенные циклы с 2D-массивамиПовторение - 2D-массивыСложение и вычитание матрицРваные массивы3D-массивы и вышеРаспространённые паттерны 2D-массивовПовторение - всё о массивах2HashMap Часть 1
Что такое HashMap?Объявление HashMapДоступ к значениямПроверка существования ключаИзменение словарейИтоги - HashMap3HashMap. Часть 2
Методы HashMapИтерация с keySet()Итерация с entrySet()Вложенный HashMapПовторение - Управление складомПовторение - Операции HashMap6Продвинутое управление потоком
Операторы метокВыражение switchСопоставление шаблоновОхранные клаузыИтоги - управление потоком9Проект - Счетчик уникальных слов
Ввод и хранение текстаОбработка слов