Menu
Coddy logo textTech

Методы HashMap

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

HashMap предоставляет множество полезных методов для распространённых операций. Вот несколько важных из них:

  • isEmpty(): Проверяет, пуст ли HashMap. Возвращает true, если не содержит пар ключ-значение, false в противном случае.
  • size(): Возвращает количество пар ключ-значение в HashMap.
  • clear(): Удаляет все сопоставления из HashMap. Карта будет пустой после возврата этого вызова.

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

HashMap<String, Integer> scores = new HashMap<>();

Чтобы проверить, пуст ли HashMap:

System.out.println(scores.isEmpty());
// Output: true

Если мы добавим элемент:

scores.put("Coddy", 100);
System.out.println(scores.isEmpty());
// Output: false

Метод size() возвращает количество пар ключ-значение в HashMap.

System.out.println(scores.size());
// Output: 1

Метод clear() удаляет все сопоставления ключ-значение из HashMap.

scores.clear();
System.out.println(scores.isEmpty());
// Output: true
challenge icon

Задание

Легко

Создайте метод с именем <strong>testHashMapMethods</strong>, который принимает HashMap с именем <strong>data</strong> в качестве входного параметра. Метод должен выполнять следующие операции:

  1. Проверьте, пуст ли HashMap и выведите:

    Is empty: true или Is empty: false

  2. Получите количество пар ключ-значение и выведите:

    Size: X(где <i>X</i> — размер HashMap).

  3. Удалите все пары из HashMap с помощью <strong>clear()</strong>.
  4. Проверьте, пуст ли HashMap снова после очистки и выведите:

    Is empty after clear: true
     

Шпаргалка

Общие утилитарные методы HashMap:

  • isEmpty(): Возвращает true, если HashMap не содержит пар ключ-значение
  • size(): Возвращает количество пар ключ-значение в HashMap
  • clear(): Удаляет все отображения из HashMap
HashMap<String, Integer> scores = new HashMap<>();

// Check if empty
System.out.println(scores.isEmpty()); // true

// Add item and check again
scores.put("Coddy", 100);
System.out.println(scores.isEmpty()); // false

// Get size
System.out.println(scores.size()); // 1

// Clear all mappings
scores.clear();
System.out.println(scores.isEmpty()); // true

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

// --- Модули для преобразования строки hashmap в 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 void testHashMapMethods(HashMap<String, Integer> data) {
        // Напишите свой код здесь
    }

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

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

        testHashMapMethods(data);
    }
}
quiz iconПроверьте себя

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

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