дополнительно
Конечно! Давайте рассмотрим больше примеров использования HashMap
, включая использование метода entrySet()
, который позволяет получить набор всех пар "ключ-значение" в карте.
Пример 1: Основные операции с HashMap
import java.util.HashMap;
public class HashMapBasicOperations {
public static void main(String[] args) {
// Создание HashMap
HashMap<String, Integer> fruitMap = new HashMap<>();
// Добавление пар "ключ-значение"
fruitMap.put("Apple", 10);
fruitMap.put("Banana", 20);
fruitMap.put("Orange", 15);
fruitMap.put("Grapes", 25);
// Получение значения по ключу
System.out.println("Количество яблок: " + fruitMap.get("Apple")); // Вывод: 10
// Проверка наличия ключа
System.out.println("Содержит ли карта ключ 'Banana'? " + fruitMap.containsKey("Banana")); // Вывод: true
// Удаление пары по ключу
fruitMap.remove("Orange");
System.out.println("После удаления 'Orange': " + fruitMap);
// Вывод всех пар "ключ-значение" с использованием entrySet()
System.out.println("Содержимое HashMap с использованием entrySet():");
for (HashMap.Entry<String, Integer> entry : fruitMap.entrySet()) {
System.out.println(entry.getKey() + ": " + entry.getValue());
}
}
}
Пример 2: Использование entrySet() для итерации
Метод entrySet()
возвращает набор всех пар "ключ-значение" в HashMap
, что позволяет удобно итерироваться по ним.
import java.util.HashMap;
public class HashMapEntrySetExample {
public static void main(String[] args) {
// Создание HashMap
HashMap<String, String> countryCapitalMap = new HashMap<>();
// Добавление пар "ключ-значение"
countryCapitalMap.put("USA", "Washington, D.C.");
countryCapitalMap.put("France", "Paris");
countryCapitalMap.put("Germany", "Berlin");
countryCapitalMap.put("Italy", "Rome");
// Использование entrySet() для итерации
System.out.println("Страны и их столицы:");
for (HashMap.Entry<String, String> entry : countryCapitalMap.entrySet()) {
System.out.println("Страна: " + entry.getKey() + ", Столица: " + entry.getValue());
}
}
}
Пример 3: Подсчет частоты слов
Давайте рассмотрим пример, где мы используем HashMap
для подсчета частоты слов в строке.
import java.util.HashMap;
public class WordFrequencyCounter {
public static void main(String[] args) {
String text = "apple banana apple orange banana apple grape";
String[] words = text.split(" ");
// Создание HashMap для хранения частоты слов
HashMap<String, Integer> wordCountMap = new HashMap<>();
// Подсчет частоты слов
for (String word : words) {
wordCountMap.put(word, wordCountMap.getOrDefault(word, 0) + 1);
}
// Вывод частоты слов
System.out.println("Частота слов:");
for (HashMap.Entry<String, Integer> entry : wordCountMap.entrySet()) {
System.out.println(entry.getKey() + ": " + entry.getValue());
}
}
}
Пример 4: Обновление значений
В этом примере мы покажем, как обновить значение для существующего ключа.
import java.util.HashMap;
public class HashMapUpdateExample {
public static void main(String[] args) {
// Создание HashMap
HashMap<String, Integer> scores = new HashMap<>();
// Добавление пар "ключ-значение"
scores.put("Alice", 85);
scores.put("Bob", 90);
scores.put("Charlie", 78);
// Обновление значения для ключа "Alice"
scores.put("Alice", 95); // Обновляем оценку Alice
// Вывод всех пар "ключ-значение"
System.out.println("Оценки студентов:");
for (HashMap.Entry<String, Integer> entry : scores.entrySet()) {
System.out.println(entry.getKey() + ": " + entry.getValue());
}
}
}
Заключение
HashMap
— это мощный инструмент для работы с ассоциативными массивами в Java. Он позволяет эффективно хранить и управлять данными в виде пар "ключ-знач
[[Programming/java/1. osnovi/Тема 6. Основные структуры данных/Урок 7. HashMap/задание|задание]]