Введение в HashMap в Java
В Java вы можете использовать массив для хранения данных, но всякий раз, когда есть необходимость хранить или извлекать данные в виде ключа и значения, вы должны использовать для этого HashMap. Hashmap - это коллекция в Java, которая принадлежит иерархии интерфейса Map. В этой статье мы обсудим Hashmap с точки зрения программирования Java.
Синтаксис:
Чтобы использовать HashMap в своем коде, вы должны импортировать (импортировать пакет java.util.HashMap) или его родительский класс.
import java.util.HashMap;
import java.util.Map;
HashMap =new HashMap ();
Где datatypeOfkey и dataytpeOfValue могут быть Integer или String.
Пример:
Map newHashMap = new HashMap();
Как работает HashMap в Java?
Hashmap использует методы хеширования для хранения и извлечения элементов. Для хранения он использует связанный список, который упоминается как корзины. Он использует два метода для ключа: equals () и hashCode () для операций вставки и получения. При вставке hashCode определяет область хранения. После этого снова hashCode проверяет, существует ли уже ключ с равным hashCode, если да, значение заменяется новым. Если нет, то создается новая карта, в которой будет сохранено значение. При получении данных hashCode определяет область поиска. После этого, используя hashCode () и equals (), получает значение и возвращает его. Возвращает ноль, если значение отсутствует.
Конструктор HashMap в Java
Он имеет четыре конструктора, как указано ниже.
- HashMap (): это значение по умолчанию с коэффициентом загрузки 0, 75 и емкостью 16.
- HashMap (int): создает HashMap с емкостью, определенной в его аргументах. Коэффициент загрузки здесь по умолчанию.
- HashMap (int, float): создает HashMap с емкостью и коэффициентом загрузки, определенными в его аргументах.
- HashMap (Map m): создает HashMap, как определено в карте аргументов.
13 лучших методов HashMap в Java
Все нижеперечисленные методы, обсуждаемые здесь, могут использоваться независимо от любой версии Java.
- public value get (Object key): Используется для получения значения соответствующего ключа.
- public value put (ключ K, значение V): вставляет значение, указанное в аргументе для соответствующего ключа.
- public boolean containsKey (Object key): решение о том, присутствует ключ или нет, обратите внимание, что тип возвращаемого значения - Boolean.
- public boolean containsValue (Object value): Решите, присутствует ли значение или нет, обратите внимание, что тип возвращаемого значения - Boolean.
- public V remove (Object key): очищает определенный ключ и его значение-форму HashMap, как указано в коде.
- public void clear (): удаляет все ключи и значения из HashMap, как уже упоминалось.
- public boolean isEmpty (): Проверяет, является ли HashMap пустым или нет.
- Object clone (): этот метод возвращает сопоставления HashMap, которые мы можем использовать для целей клонирования в другой HashMap.
- public int size (): возвращает размер, означает, сколько пар ключ-значение присутствует в HashMap.
- общедоступный сет
entrySet (): этот метод возвращает набор отображений в HashMap. - public Set keySet () : набор ключей, который присутствует в HashMap, возвращается этим методом.
- public void putAll (Map): копирует все содержимое карты в другое.
- Collection values (): вы можете получить коллекцию всех значений для HashMap.
Примеры HashMap в Java
HashMap - это класс коллекции, основанный на карте, который используется для хранения пар ключ и значение. Давайте посмотрим на несколько примеров.
Пример № 1
Мы обсудим некоторые примеры кода HashMap здесь. Вы должны попрактиковаться в написании кода и запустить компилятор Java, чтобы проверить вывод. Вы можете сопоставить вывод с данным для проверки. Создание HashMap и вставка в него данных.
Код:
import java.util.HashMap;
import java.util.Map;
public class CreateHashMapExample (
public static void main(String() args) (
// Creating a HashMap
Map newHashMap = new HashMap();
// Addition of key and value
newHashMap.put("Key1", "Java");
newHashMap.put("Key2", "C++");
newHashMap.put("Key3", "Python");
// Addition of new key and value
newHashMap.putIfAbsent("Key4", "Ruby");
System.out.println(newHashMap);
)
)
Выход:
Пример № 2
Давайте возьмем другой пример, где мы берем строку как ключ и целое число как значение. Здесь мы будем измерять ключ и его соответствующие значения в дюймах в качестве значения.
Код:
import java.util.HashMap;
public class CreateHashMapExample2 (
public static void main(String() args) (
// Create a HashMap object called measurement
HashMap ms = new HashMap();
// Add keys and values (Name and phone number of the person)
ms.put("S", 35);
ms.put("M", 38);
ms.put("L", 40);
ms.put("XL", 42);
for (String key : ms.keySet()) (
System.out.println("measurement of " + key + " in inch is: " + ms.get(key));
)
)
)
Выход:
Пример № 3
Здесь мы будем делать несколько вещей. Сначала мы создадим Hashmap, а затем по одному получим его значения. После этого мы скопируем все данные HashMap в новый HashMap. После этого мы удалим один элемент и получим их размеры. Если размер меньше на единицу, уменьшение размера при удалении подтверждается.
Код:
import java.util.Collection;
import java.util.HashMap;
import java.util.Map;
public class HashMapInJava (
public static void main(String() args) (
Map newHashMap = new HashMap();
// Addition of key and value
newHashMap.put("Key1", "Lenovo");
newHashMap.put("Key2", "Motorola");
newHashMap.put("Key3", "Nokia");
newHashMap.put("Key4", null);
newHashMap.put(null, "Sony");
System.out.println("Original map contains:" + newHashMap);
//getting size of Hashmap
System.out.println("Size of original Map is:" + newHashMap.size());
//copy contains of one Hashmap to another
Map copyHashMap = new HashMap();
copyHashMap.putAll(newHashMap);
System.out.println("copyHashMap mappings= " + copyHashMap);
//Removal of null key
String nullKeyValue = copyHashMap.remove(null);
System.out.println("copyHashMap null key value = " + nullKeyValue);
System.out.println("copyHashMap after removing null key = " + copyHashMap);
System.out.println("Size of copyHashMap is:" + copyHashMap.size());
)
)
Выход:
Заметили ли вы что-то в выводе HashMap во всех наших примерах, пока мы печатаем ключ и значения? Печать не в отсортированном порядке. Hashmap не похож на массив, так что сканирование и печать должны быть отсортированы, он может выбирать случайные значения в зависимости от полученного значения хеш-функции.
Вывод
Вы должны использовать HashMap, когда ваш код или сценарий использования требует обработки данных в парах ключ-значение. В этой статье мы узнали о хэш-картах в Java с примерами кода. Вы должны практиковаться в написании кодов самостоятельно, чтобы освоить эту тему.
Рекомендуемая статья
Это руководство по HashMap в Java. Здесь мы обсуждаем Введение в HashMap в Java и его Методы, а также реализацию и вывод кода. Вы также можете просмотреть наши предлагаемые статьи, чтобы узнать больше -
- Введение в HTML-фреймы
- Топ 11 атрибутов HTML
- Приложения HTML | Топ 10 использует
- 10 лучших отличий HTML от HTML5 (Инфографика)