Java HashMap
Хеш-карта Java
В этом руководстве мы узнаем о классе Java HashMap и его различных операциях с помощью примеров.
01
Класс платформы коллекций Java предоставляет функциональные возможности структуры данных хеш-таблицы.
Он хранит элементы в ключ/значение. пары. Здесь ключи уникальные идентификаторы, используемые для связывания каждого значения на карте.
15
класс реализует интерфейс Map.

Создать HashMap
Чтобы создать хеш-карту, мы должны импортировать 20
пакет первый. Как только мы импортируем пакет, вот как мы можем создавать хэш-карты в Java.
01
В приведенном выше коде мы создали хэш-карту с именем numbers. . Вот, К представляет тип ключа и V представляет тип значений. Например,
10пре>Здесь тип ключей составляет
<час>34
и тип значений составляет45
.Пример 1. Создание HashMap в Java
28Вывод
32В приведенном выше примере мы создали
55
названные языки .Здесь мы использовали
<час>67
метод для добавления элементов в хэш-карту. Мы узнаем больше о78
метод далее в этом руководстве.Основные операции с Java HashMap
80
class предоставляет различные методы для выполнения различных операций с хэш-картами. В этом руководстве мы рассмотрим некоторые часто используемые операции массива:
- Добавить элементы
- Доступ к элементам
- Изменить элементы
- Удалить элементы
1. Добавить элементы в HashMap
Чтобы добавить один элемент в хэш-карту, мы используем 95
метод 105
учебный класс. Например,
40
Вывод
58
В приведенном выше примере мы создали 117
названные числа . Здесь мы использовали 129
метод добавления элементов к числам.
Обратите внимание на заявление,
61
Здесь мы передаем 138
значение Один как ключ и 143
значение 1 как значение для 156
метод.
Рекомендуемая литература
- Java HashMap put()
- Java HashMap putAll()
- Java HashMap putIfAbsent()
2. Доступ к элементам HashMap
Мы можем использовать 160
метод для доступа к значению из хэш-карты. Например,
73
Вывод
80
В приведенном выше примере обратите внимание на выражение
90
Здесь 174
метод принимает ключ в качестве аргумента и возвращает соответствующее значение связанный с ключом.
Мы также можем получить доступ к ключам , значения и ключ/значение пары хэш-карты в виде заданных представлений с использованием 187
, 196
и 204
методы соответственно. Например,
107
Вывод
114
В приведенном выше примере мы создали хэш-карту с именем languages. . Здесь мы получаем доступ к ключам , значения и ключ/значение сопоставления из хэш-карты.
Рекомендуемая литература
- Java HashMap get()
- Хэш-карта Java getOrDefault()
- Набор ключей Java HashMap()
- Значения Java HashMap()
- Java HashMap entrySet()
3. Изменить значение HashMap
Мы можем использовать 210
метод для изменения значения, связанного с ключом в хэш-карте. Например,
120
Вывод
134
В приведенном выше примере мы создали хэш-карту с именем languages. . Обратите внимание на выражение,
146
Здесь мы меняем значение, на которое ссылается ключ 2. с новым значением C++ .
222
класс также предоставляет некоторые варианты 232
метод. Чтобы узнать больше, посетите
- Java HashMap заменить()
- HashMap в Java replaceAll()
4. Удалить элементы HashMap
Чтобы удалить элементы из хэш-карты, мы можем использовать метод remove(). Например,
159
Вывод
166
Здесь 242
метод принимает ключ как его параметр. Затем он возвращает значение связанный с ключом и удаляет запись .
Мы также можем удалить запись только при определенных условиях. Например,
179
Здесь 253
удаляет только запись если ключ 2 связано с значением C++ . С 2 не связан с C++ , запись не удаляется.
Чтобы узнать больше, посетите страницу Java HashMap remove().
<час>Другие методы HashMap
Метод | Описание |
---|---|
очистить() | удаляет все сопоставления из 260 |
вычислить() | вычисляет новое значение для указанного ключа |
computeIfAbsent() | вычисляет значение, если сопоставление для ключа отсутствует |
computeIfPresent() | вычисляет значение для сопоставления, если ключ присутствует |
слияние() | объединяет указанное сопоставление с 279 |
клон() | создает копию 280 |
содержитКлюч() | проверяет наличие указанного ключа в Hashmap |
содержит значение() | проверяет, если 296 содержит указанное значение |
размер() | возвращает количество элементов в 308 |
пусто() | проверяет, соответствует ли 318 пусто |
Перебор HashMap
Чтобы перебрать каждую запись хэш-карты, мы можем использовать цикл Java for-each. Мы можем перебирать только ключи , только значения и сопоставление ключей и значений. . Например,
186
Вывод
197
Обратите внимание, что мы использовали 321
в приведенном выше примере. Это вложенный класс 332
. интерфейс, который возвращает вид (элементы) карты.
Сначала нам нужно импортировать 342
пакет, чтобы использовать этот класс.
Этот вложенный класс возвращает представление (элементы) карты.
<час>Создание HashMap из других карт
В Java мы также можем создать хэш-карту из других карт. Например,
202
Вывод
210
В приведенном выше примере мы создали 351
с именем 366
. Обратите внимание на выражение,
229
Здесь мы создаем 379
именованные номера с помощью 387
. Чтобы узнать больше о карте дерева, посетите страницу Java TreeMap.
Примечание :при создании хэш-карты мы можем включить дополнительные параметры:capacity. и коэффициент загрузки . Например,
238
Здесь
- 8 (вместимость 8) — это означает, что он может хранить 8 записей.
- 0,6f (коэффициент загрузки равен 0,6). Это означает, что всякий раз, когда наша хеш-таблица заполняется на 60 %, записи перемещаются в новую хеш-таблицу, размер которой вдвое превышает размер исходной хеш-таблицы.
Если необязательные параметры не используются, то используется емкость по умолчанию. будет 16 и коэффициент загрузки по умолчанию. будет 0,75 .
java