Ako odstrániť a získať prístup k prvkom ConcurrentHashMap v jazyku Java?

Ako Odstranit A Ziskat Pristup K Prvkom Concurrenthashmap V Jazyku Java



' ConcurrentHashMap ” je vylepšená verzia tradičnej HashMap. Programátorovi poskytuje množstvo výhod, ako je úspora času, väčšia jednoduchosť a zvýšenie flexibility. Môže vykonávať viacero úloh vedľa seba súčasne, avšak v prípade viacerých aktualizácií hodnoty uzlov sa naraz vykoná iba jedna inovácia.

Tento článok ukazuje postup na odstránenie a prístup k prvkom ConcurrentHashMap v jazyku Java.

Ako odstrániť prvky ConcurrentHashMap v jazyku Java?

Špecifické prvky možno odstrániť z „ ConcurrentHashMap ” prvky cez “ odstrániť () “. Ak chcete odstrániť všetky prvky naraz, „ jasný() “ metóda je najlepšou voľbou.







Existujú aj dve variácie metódy „remove()“:



  • ' odstrániť (kľúč) ” vymaže entitu so špecifikovaným “ kľúč “ z „ConcurrentHashMap“.
  • ' odstrániť (kľúč, hodnota) “ vymaže entitu, ktorá špecifikovala “ kľúč “ pozdĺž zodpovedajúceho “ hodnotu “ z „ConcurrentHashMap“.

Pre lepšie vysvetlenie navštívte nižšie uvedený blok kódu:



importovať java.util.concurrent.ConcurrentHashMap ;
trieda Root
{
verejnosti statické neplatné Hlavná ( Reťazec [ ] args ) //vytvorenie metódy main().
{ // ConcurrentHashMap Declaration
Tím ConcurrentHashMap = Nový ConcurrentHashMap ( ) ;
Tím. dať ( 'Thor' , 2 ) ;
Tím. dať ( 'zvláštne' , 4 ) ;
Tím. dať ( 'Hawkeye' , 6 ) ;
Systém . von . println ( 'ConcurrentHashMap: ' + Tím ) ;

int hodnotu = Tím. odstrániť ( 'zvláštne' ) ;
Systém . von . println ( 'Hodnota ' + hodnotu + 'je odstránený' ) ;
Systém . von . println ( 'ConcurrentHashMap: ' + Tím ) ;

boolovská hodnota výsledok = Tím. odstrániť ( 'Hawkeye' , 6 ) ;
Systém . von . println ( 'Je položka {Hawkeye = 6} odstránená?' + výsledok ) ;
Systém . von . println ( 'Aktualizovaná ConcurrentHashMap: ' + Tím ) ;

Tím. jasný ( ) ;
Systém . von . println ( 'Aktualizovaná ConcurrentHashMap: ' + Tím ) ;

}
}

Popis vyššie uvedeného bloku kódu:





  • Najprv „ConcurrentHashMap“ s názvom „ Tím “ sa vytvorí a potom sa do neho vložia fiktívne údaje pomocou „ dať “.
  • Ďalej, „ odstrániť () “ používa sa metóda a kľúč „ Zvláštne “ je odovzdaný. Táto metóda odstráni entitu z mapy s kľúčom „Strange“.
  • Okrem toho zobrazte zostávajúce prvky mapy prostredníctvom „ConcurrentHashMap“.
  • Teraz prejdite „ kľúč “ a zodpovedajúce „ hodnotu “ na “ odstrániť () ” na odstránenie entity z „ConcurrentHashMap“, ktorá má špecifický kľúč a hodnotu.
  • Potom zobrazte „ConcurrentHashMap“, aby ste vizuálne videli rozdiel.
  • Nakoniec použite „ jasný() ” na odstránenie všetkých prvkov v „ConcurrentHashMap“. Na konci zobrazte aj „ConcurrentHashMap“ na konzole.

Po skončení fázy kompilácie:



Snímka zobrazuje prvky, ktoré boli odstránené z ConcurrentHashMap.

Ako získať prístup k prvkom ConcurrentHashMap v jazyku Java?

Prvky „ ConcurrentHashMap “ je možné získať pomocou viacerých skupín metód. Do prvej skupiny patrí „ entrySet() “, “ keySet() “ a „ hodnoty() “ metódy. Používajú sa na získanie všetkých prvkov naraz. Pomocou vyššie uvedených metód sa programátor môže rozhodnúť získať všetky „ kľúče “, “ hodnoty ' alebo obaja ' kľúč/hodnota ” mapovanie mapy.

Navštívte nižšie uvedený kód, aby ste pochopili praktickú implementáciu vyššie uvedených metód:

importovať java.util.concurrent.ConcurrentHashMap ;

trieda Hlavná {
verejnosti statické neplatné Hlavná ( Reťazec [ ] args ) //vytvorenie metódy main().
{ // ConcurrentHashMap Declaration
Tím ConcurrentHashMap = Nový ConcurrentHashMap ( ) ;
Tím. dať ( 'Thor' , 2 ) ;
Tím. dať ( 'zvláštne' , 4 ) ;
Tím. dať ( 'Hawkeye' , 6 ) ;
Tím. dať ( 'Čierny panter' , 8 ) ;
Systém . von . println ( 'ConcurrentHashMap: ' + Tím ) ;
Systém . von . println ( 'Načítať kľúč a hodnoty: ' + Tím. entrySet ( ) ) ;
Systém . von . println ( 'Získať kľúče: ' + Tím. keySet ( ) ) ;
Systém . von . println ( 'Načítať hodnoty: ' + Tím. hodnoty ( ) ) ;
}
}

Popis vyššie uvedeného bloku kódu:

  • Najprv vytvorte „ConcurrentHashMap“ s názvom „ Tím “ a vložte do nej viacero prvkov pomocou „ dať () “.
  • Ďalej zobrazte „ConcurrentHashMap“ na konzole pomocou „ out.println() “.
  • Potom použite „ entrySet() ” metóda na získanie všetkých údajov prítomných na mape.
  • Potom použite „ keySet() ” metóda na získanie iba kľúčov z mapy.
  • Nakoniec použite „ hodnoty() ” metóda na získanie iba hodnôt spojených s každým kľúčom. Toto vráti iba hodnoty v poradí.

Po vykonaní vyššie uvedeného kódu:

Vo vyššie uvedenej snímke je na konzole zobrazený výstup vyššie použitých metód. A rôzne farebné hranice sa používajú na vytvorenie vizuálneho oddelenia medzi výstupom každej metódy.

Teraz druhá skupina zahŕňa „ dostať () “ a „ getOrDefault() “ metódy. Tieto metódy sa používajú na získanie „ kľúče “ z „ ConcurrentHashMap “. Navštívte napríklad nižšie uvedený blok kódu:

importovať java.util.concurrent.ConcurrentHashMap ;
trieda Hlavná {
verejnosti statické neplatné Hlavná ( Reťazec [ ] args ) //vytvorenie metódy main().
{ // ConcurrentHashMap Declaration
Tím ConcurrentHashMap = Nový ConcurrentHashMap ( ) ;
Tím. dať ( 'Thor' , 2 ) ;
Tím. dať ( 'zvláštne' , 4 ) ;
Tím. dať ( 'Hawkeye' , 6 ) ;
Tím. dať ( 'Čierny panter' , 8 ) ;
systém . von . println ( 'Pomocou getOrDefault(): ' + hodnota2 ) ;

int hodnota1 = Tím. dostať ( 'Hawkeye' ) ;
systém . von . println ( 'Načítaný kľúč pre zadanú hodnotu je: ' + hodnota1 ) ;
int hodnota2 = Tím. getOrDefault ( 'Romanoff' , 10 ) ;
systém . von . println ( 'ConcurrentHashMap: ' + Tím ) ;
}
}

Vysvetlenie vyššie uvedeného kódu:

  • Využite to isté“ ConcurrentHashMap “, ktorý je vytvorený vo vyššie uvedenom bloku kódu.
  • Okrem toho použite „ dostať () ” a hodnotu, ktorej kľúč sa má získať, odovzdajte do jej zátvoriek.
  • Navyše s využitím „ getOrDefault() ” metóda, ktorá preberá dva parametre/hodnoty, hodnotu a predvolený kľúč. Ak sa zadaný objekt nájde na mape, získa sa príslušný kľúč. A ak sa zadaná hodnota nenájde, použije sa predvolený kľúč.
  • Potom uložte výsledky oboch metód do premenných a zobrazte ich na konzole na účely vizualizácie.

Po vykonaní vyššie uvedeného bloku kódu:

Vyššie uvedená snímka zobrazuje kľúče vzhľadom na hodnoty získané a vytlačené na konzole.

Záver

Ak chcete odstrániť/vymazať konkrétne prvky z „ ConcurrentHashMap “, “ odstrániť () “ môže byť použitá metóda. Pomocou neho môže programátor vymazať prvok, ktorý má špecifický „ kľúč “ alebo zodpovedajúce „ hodnotu “. S použitím „ jasný() “, každý prvok nachádzajúci sa na mape sa odstráni naraz. Pre prístup, „ entrySet() “, “ keySet() “ a „ hodnoty() “ používajú sa metódy. Môžu získať všetky ' kľúče/hodnoty “, “ kľúče “ a „ hodnoty “ z „ ConcurrentHashMap ' naraz. Ak chcete získať iba konkrétne kľúče, „ dostať “ a „ getOrDefault “ používajú sa metódy.