HashMap sisään Java

⚡ Älykäs yhteenveto

HashMap sisään Java tallentaa tiedot yksilöllisinä avain-arvo-pareina, jotka voidaan hakea nopeasti avaimen avulla. Se sisältää olioviittauksia primitiivien sijaan, joten käytetään kääreluokkia, ja tarjoaa metodeja, kuten put, get, remove ja containsKey.

  • 🗝️ HashMap määritelty: Tallentaa yksilölliset avaimet, jotka on yhdistetty arvoihin, jotta avain voi hakea ne nopeasti.
  • 📦 Objektiviitteet: Säilyttää vain olioita, joten käytä kääreluokkia, kuten Integer, primitiivien sijaan.
  • 🔧 Ydinmenetelmät: put() tallentaa avaimen, get() hakee arvon ja remove() poistaa avaimen mukaan.
  • 🔍 Haut: containsKey(), keySet(), values() ja isEmpty() tarkastavat kartan sisällön.
  • 🧪 Esimerkkejä: Esimerkkiohjelmat rakentavat kartan, tulostavat sen ja poistavat merkinnän avaimen mukaan.

HashMap sisään Java

Mitä Hashmap sisältää Java?

HashMap periaatteessa osoittaa ainutlaatuiset avaimet vastaamaan arvot jotka voidaan hakea missä tahansa kohdassa.

HashMap sisään Java

Ominaisuudet Java Hashmap

a) arvot voidaan tallentaa karttaan muodostamalla a avainarvo pari. Arvo voidaan noutaa avaimella välittämällä se oikealle menetelmälle.

b) Jos ei elementtiä on olemassa kartalla, se heittääNoSuchElementException'.

c) Vain HashMap-myymälät objektiviittauksia. Siksi sitä on mahdotonta käyttää primitiiviset tietotyypit kuten double tai int. Käytä kääreluokkaa (kuten Integer tai Double) sen sijaan.

Ominaisuudet Java Hashmap

HashMapsin käyttö Java ohjelmat:

Seuraavassa on kaksi tapaa ilmoittaa hash-kartta:

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

Tärkeitä Hashmap-menetelmiä

  • hanki (Object KEY) – Tämä palauttaa tässä määritettyyn avaimeen liittyvän arvon Java hashmappi.
  • put(Objektiavain, merkkijono VALUE) – Tämä menetelmä tallentaa määritetyn arvon ja liittää sen määritettyyn avaimeen tässä kartassa.

Java Hashmap esimerkki

Seuraavassa on esimerkki java Hash Map -toteutuksesta:

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

lähtö:

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

Esimerkki: Poista arvo HashMapista avaimen perusteella

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

lähtö:

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}

Anna meidän kysyä muutama kysely itse Hash Map -kartalta tietääksemme sen paremmin

K: Joten Mr.Hash Map, kuinka voin selvittää, onko tietty avain määritetty sinulle?

V: Hienoa, voit käyttää kanssani includeKey(Object KEY) -menetelmää, se palauttaa Boolen arvon, jos minulla on arvo annetulle avaimelle.

K: Kuinka löydän kaikki kartalta saatavilla olevat avaimet?

V: Minulla on menetelmä nimeltä ns näppäimistö(), joka palauttaa kaikki kartan avaimet. Jos kirjoitat yllä olevassa esimerkissä rivin muodossa -
System.out.println(objMap.keySet());

Se palauttaa an ulostulo kuten-
[Nimi, tyyppi, teho, hinta]

Vastaavasti, jos tarvitset vain kaikki arvot, minulla on menetelmä arvot().
System.out.println(objMap.values());

Se palauttaa an ulostulo kuten-
[Suzuki, 2-pyöräinen, 220, 85000]

K: Oletetaan, että minun on poistettava vain tietty avain kartasta, pitääkö minun poistaa koko kartta?

V: Ei kaveri!! Minulla on menetelmä poistaa(Object KEY), joka poistaa vain kyseisen avain-arvo-parin.

K: Kuinka voimme tarkistaa, sisältääkö avainarvo-pareja?

V: Tarkista vain olenko tyhjä vai en!! Lyhyesti, käytä on tyhjä() menetelmä minua vastaan..

UKK

HashMap on synkronoimaton ja sallii yhden null-avaimen ja useita null-arvoja, mikä tekee siitä nopeamman yksisäikeisessä käytössä. Hashtable on synkronoitu eikä salli null-avaimia tai -arvoja, mikä tekee siitä säikeenkestävän mutta hitaamman.

Kyllä. HashMap sallii täsmälleen yhden null-avaimen ja minkä tahansa määrän null-arvoja. Toisen null-avaimen lisääminen yksinkertaisesti korvaa olemassa olevan null-avaimen arvon.

Ei. HashMap ei takaa avainten järjestystä. Jos tarvitset lisäysjärjestyksen, käytä LinkedHashMapia, ja jos haluat lajiteltua järjestystä avainten mukaan, käytä TreeMapia.

Tekoäly voi analysoida käyttötapoja, kuten hakuja, järjestystä ja samanaikaisuustarpeita, ja sitten suositella HashMapia, TreeMapia, LinkedHashMapia tai ConcurrentHashMapia.ping kehittäjät valitsevat tehokkaimman kokoelman käyttötarkoitukseensa.

Kyllä. Tekoälyavusteinen analyysi voi merkitä jaetun HashMapin, johon useat säikeet pääsevät käsiksi ilman synkronointia, ja suositella ConcurrentHashMapia tai ulkoista lukitusta kilpailutilanteiden ja tietojen vioittumisen estämiseksi.

Tiivistä tämä viesti seuraavasti: