HashMap в Java
В какво е Hashmap Java?
HashMap основно обозначава уникални ключове към съответния ценности които могат да бъдат извлечени във всяка дадена точка.
Характеристики на Java Hashmap
а) ценности може да се съхранява в карта чрез формиране на a ключ-стойност двойка. Стойността може да бъде извлечена с помощта на ключа чрез предаването му на правилния метод.
б) Ако никакъв елемент съществува в картата, ще хвърли 'NoSuchElementException'.
в) Само HashMap съхранява препратки към обекти. Ето защо е невъзможно да се използва примитивни типове данни като double или int. Използвайте клас обвивка (като Integer или Double) вместо.
Използване на HashMaps в Java програми:
Следват двата начина за деклариране на хеш карта:
HashMap<String, Object> map = new HashMap<String, Object>(); HashMap x = new HashMap();
Важни Hashmap методи
- get(Object KEY) – Това ще върне стойността, свързана с определен ключ в това Java hashmap.
- put(Object KEY, String VALUE) – Този метод съхранява определената стойност и я свързва с посочения ключ в тази карта.
Java Пример за Hashmap
Следва примерна реализация на java Hash Map:
import java.util.HashMap; import java.util.Map; public class Sample_TestMaps{ public static void main(String[] args){ Map<String, String> objMap = new HashMap<String, String>(); objMap.put("Name", "Suzuki"); objMap.put("Power", "220"); objMap.put("Type", "2-wheeler"); objMap.put("Price", "85000"); System.out.println("Elements of the Map:"); System.out.println(objMap); } }
Изход:
Elements of the Map: {Type=2-wheeler, Price=85000, Power=220, Name=Suzuki}
Пример: Премахнете стойност от HashMap въз основа на ключ
import java.util.*; public class HashMapExample { public static void main(String args[]) { // create and populate hash map HashMap<Integer, String> map = new HashMap<Integer, String>(); map.put(1,"Java"); map.put(2, "Python"); map.put(3, "PHP"); map.put(4, "SQL"); map.put(5, "C++"); System.out.println("Tutorial in Guru99: "+ map); // Remove value of key 5 map.remove(5); System.out.println("Tutorial in Guru99 After Remove: "+ map); } }
Изход:
Tutorial in Guru99: {1=Java, 2=Python, 3=PHP, 4=SQL, 5=C++} Tutorial in Guru99 After Remove: {1=Java, 2=Python, 3=PHP, 4=SQL}
Нека да зададем няколко запитвания към самата хеш карта, за да я опознаем по-добре
Въпрос: И така, Mr.Hash Map, как мога да разбера дали определен ключ е бил присвоен на вас?
A: Страхотно, можете да използвате метода containsKey(Object KEY) с мен, той ще върне булева стойност, ако имам стойност за дадения ключ.
В: Как да намеря всички налични ключове, които присъстват на картата?
О: Имам метод, наречен as набор от ключове(), който ще върне всички ключове на картата. В горния пример, ако напишете ред като –
System.out.println(objMap.keySet());
Ще върне an продукция като-
[Име, тип, мощност, цена]
По същия начин, ако имате нужда само от всички стойности, имам метод за ценности†
System.out.println(objMap.values());
Ще върне an продукция като-
[Suzuki, 2 колела, 220, 85000]
Въпрос: Да предположим, че трябва да премахна само определен ключ от картата, трябва ли да изтрия цялата карта?
О: Не приятел!! Имам метод за премахване на(Object KEY), който ще премахне само тази конкретна двойка ключ-стойност.
Въпрос: Как можем да проверим дали наистина съдържате някои двойки ключ-стойност?
A: Просто проверете дали съм празен или не!! Накратко, използвайте празно е() метод срещу мен..