HashMap in Java

Waar zit Hashmap in Java?

Een HashMap duidt in feite aan unieke sleutels corresponderen waarden die op elk gewenst moment kan worden opgehaald.

HashMap in Java

Kenmerken van Java Hash kaart

a) De waarden kan op een kaart worden opgeslagen door een sleutel waarde paar. De waarde kan worden opgehaald met behulp van de sleutel door deze door te geven aan de juiste methode.

b) Als geen onderdeel bestaat op de kaart, zal het een 'NoSuchElementException'.

c) Alleen HashMap-winkels objectreferenties. Daarom is het onmogelijk om het te gebruiken primitieve gegevenstypen zoals double of int. Gebruik wrapper-klasse (zoals Integer of Double) in plaats daarvan.

Kenmerken van Java Hash kaart

HashMaps gebruiken in Java programma:

Hieronder staan ​​de twee manieren om een ​​Hash Map te declareren:

HashMap<String, Object> map = new HashMap<String, Object>();
HashMap x  = new HashMap();

Belangrijke Hashmap-methoden

  • get(objectsleutel) – Hiermee wordt de waarde geretourneerd die aan een opgegeven sleutel hierin is gekoppeld Java hashmap.
  • put(ObjectSLEUTEL, TekenreeksWAARDE) – Deze methode slaat de opgegeven waarde op en koppelt deze aan de opgegeven sleutel in deze kaart.

Java Hashmap-voorbeeld

Hieronder ziet u een voorbeeld van een implementatie van 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);
  }
}

Output:

Elements of the Map:
{Type=2-wheeler, Price=85000, Power=220, Name=Suzuki}

Voorbeeld: een waarde uit HashMap verwijderen op basis van de sleutel

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);
   }
}

Output:

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}

Laten we een paar vragen stellen aan de Hash Map zelf om deze beter te leren kennen

Vraag: Dus meneer Hash Map, hoe kan ik erachter komen of een bepaalde sleutel aan u is toegewezen?

A: Cool, je kunt bij mij de methode containKey(Object KEY) gebruiken, deze retourneert een Booleaanse waarde als ik een waarde heb voor de gegeven sleutel.

Vraag: Hoe vind ik alle beschikbare sleutels die op de kaart aanwezig zijn?

A: Ik heb een methode genaamd as sleutelbos() waarmee alle sleutels op de kaart worden geretourneerd. Als u in het bovenstaande voorbeeld een regel schrijft als –
Systeem.out.println(objMap.keySet());

Het zal een retour sturen uitvoer net zo-
[Naam, Type, Vermogen, Prijs]

Op dezelfde manier, als je alleen alle waarden nodig hebt, heb ik een methode voor waarden().
Systeem.out.println(objMap.values());

Het zal een retour sturen uitvoer net zo-
[Suzuki, tweewieler, 2, 220]

Vraag: Stel dat ik slechts een bepaalde sleutel van de kaart moet verwijderen. Moet ik dan de hele kaart verwijderen?

A: Nee vriend!! Ik heb een methode verwijderen(Object KEY) waarmee alleen dat specifieke sleutel-waardepaar wordt verwijderd.

Vraag: Hoe kunnen we controleren of u daadwerkelijk enkele sleutel-waardeparen bevat?

A: Controleer gewoon of ik leeg ben of niet!! Kortom, gebruik is leeg() methode tegen mij..