Cum să eliminați și să accesați elementele ConcurrentHashMap în Java?

Cum Sa Eliminati Si Sa Accesati Elementele Concurrenthashmap In Java



ConcurrentHashMap ” clasa este versiunea îmbunătățită a HashMap tradițional. Oferă o mulțime de beneficii programatorului, cum ar fi economisirea de mult timp, mai multă ușurință și sporește flexibilitatea. Poate efectua mai multe sarcini una lângă alta în același timp, cu toate acestea, pentru mai multe upgrade-uri ale valorii nodurilor, se realizează o singură actualizare la un moment dat.

Acest articol demonstrează procedura de eliminare și accesare a elementelor ConcurrentHashMap în Java.

Cum să eliminați elementele ConcurrentHashMap din Java?

Elementele specifice pot fi eliminate din „ ConcurrentHashMap ' elemente prin intermediul ' elimina() ” metoda. Pentru a elimina toate elementele simultan, „ clar() ” metoda este cea mai bună opțiune de a alege.







Există, de asemenea, două variante ale metodei „remove()”:



  • elimina (cheie) ” șterge entitatea cu „ cheie ” din „ConcurrentHashMap”.
  • elimina (cheie, valoare) ” șterge entitatea care a specificat ” cheie „ de-a lungul „corespondentului” valoare ” din „ConcurrentHashMap”.

Vizitați blocul de cod de mai jos pentru o explicație mai bună:



import java.util.concurrent.ConcurrentHashMap ;
clasă Rădăcină
{
public static gol principal ( Şir [ ] argumente ) //crearea metodei main().
{ // Declarație ConcurrentHashMap
Echipa ConcurrentHashMap = nou ConcurrentHashMap ( ) ;
Echipă. a pune ( 'Thor' , 2 ) ;
Echipă. a pune ( 'Ciudat' , 4 ) ;
Echipă. a pune ( 'Hawkeye' , 6 ) ;
Sistem . afară . println ( 'ConcurrentHashMap: ' + Echipă ) ;

int valoare = Echipă. elimina ( 'Ciudat' ) ;
Sistem . afară . println ( 'Valoarea ' + valoare + ' este eliminat' ) ;
Sistem . afară . println ( 'ConcurrentHashMap: ' + Echipă ) ;

boolean rezultat = Echipă. elimina ( 'Hawkeye' , 6 ) ;
Sistem . afară . println ( „Este eliminată intrarea {Hawkeye = 6}?” + rezultat ) ;
Sistem . afară . println ( 'ConcurrentHashMap actualizat: ' + Echipă ) ;

Echipă. clar ( ) ;
Sistem . afară . println ( 'ConcurrentHashMap actualizat: ' + Echipă ) ;

}
}

Descrierea blocului de cod de mai sus:





  • În primul rând, „ConcurrentHashMap” numit „ Echipă ” este creat, iar apoi sunt inserate date fictive în interiorul acestuia folosind „ a pune ” metoda.
  • În continuare, „ elimina() este folosită metoda și cheia de „ Ciudat ” i se trece. Această metodă elimină entitatea de pe hartă având o cheie „Ciudat”.
  • În plus, afișați elementele rămase ale hărții prin „ConcurrentHashMap”.
  • Acum, treceți „ cheie ” și corespunzătoare ” valoare „la „ elimina() ” pentru a șterge o entitate din „ConcurrentHashMap” care are o cheie și o valoare specifice.
  • După aceea, afișați „ConcurrentHashMap” pentru a vedea vizual diferența.
  • În cele din urmă, utilizați „ clar() ” pentru a șterge toate elementele rezidente din interiorul „ConcurrentHashMap”. De asemenea, afișați „ConcurrentHashMap” pe consolă la sfârșit.

După încheierea fazei de compilare:



Instantaneul arată elementele care au fost eliminate din ConcurrentHashMap.

Cum se accesează elementele ConcurrentHashMap în Java?

Elementele „ ConcurrentHashMap ” poate fi accesat folosind mai multe grupuri de metode. Prima grupă include „ entrySet() ”, “ keySet() ' și ' valori () ” metode. Ele sunt utilizate pentru a prelua toate elementele simultan. Folosind metodele de mai sus, programatorul poate alege să recupereze toate „ chei ”, “ valorile ' sau amândouă ' valoare cheie ” cartografierea hărții.

Vizitați codul de mai jos pentru a înțelege implementarea practică a metodelor de mai sus:

import java.util.concurrent.ConcurrentHashMap ;

clasă Principal {
public static gol principal ( Şir [ ] argumente ) //crearea metodei main().
{ // Declarație ConcurrentHashMap
Echipa ConcurrentHashMap = nou ConcurrentHashMap ( ) ;
Echipă. a pune ( 'Thor' , 2 ) ;
Echipă. a pune ( 'Ciudat' , 4 ) ;
Echipă. a pune ( 'Hawkeye' , 6 ) ;
Echipă. a pune ( 'Pantera neagră' , 8 ) ;
Sistem . afară . println ( 'ConcurrentHashMap: ' + Echipă ) ;
Sistem . afară . println ( „Preluare cheie și valori:” + Echipă. entrySet ( ) ) ;
Sistem . afară . println ( „Preluare chei:” + Echipă. set de chei ( ) ) ;
Sistem . afară . println ( „Preluare valori:” + Echipă. valorile ( ) ) ;
}
}

Descrierea blocului de cod de mai sus:

  • Mai întâi, creați un „ConcurrentHashMap” numit „ Echipă ” și inserați mai multe elemente în el utilizând „ a pune() ” metoda.
  • Apoi, afișați „ConcurrentHashMap” pe consolă folosind „ out.println() ” metoda.
  • Apoi, utilizați „ entrySet() ” metoda de a prelua toate datele prezente pe hartă.
  • După aceea, utilizați „ keySet() ” pentru a prelua doar cheile de pe hartă.
  • În cele din urmă, folosiți „ valori () ” pentru a prelua numai valorile asociate fiecărei chei. Aceasta returnează numai valori în secvență.

După executarea codului de mai sus:

În instantaneul de mai sus, rezultatul metodelor utilizate mai sus este afișat pe consolă. Și diferite limite colorate sunt utilizate pentru a crea o separare vizuală între rezultatul fiecărei metode.

Acum, al doilea grup include „ obține() ' și ' getOrDefault() ” metode. Aceste metode sunt utilizate pentru a recupera „ chei ' de la ' ConcurrentHashMap ”. De exemplu, vizitați blocul de cod de mai jos:

import java.util.concurrent.ConcurrentHashMap ;
clasă Principal {
public static gol principal ( Şir [ ] argumente ) //crearea metodei main().
{ // Declarație ConcurrentHashMap
Echipa ConcurrentHashMap = nou ConcurrentHashMap ( ) ;
Echipă. a pune ( 'Thor' , 2 ) ;
Echipă. a pune ( 'Ciudat' , 4 ) ;
Echipă. a pune ( 'Hawkeye' , 6 ) ;
Echipă. a pune ( 'Pantera neagră' , 8 ) ;
Sistem . afară . println ( „Utilizarea getOrDefault():” + valoarea2 ) ;

int valoare1 = Echipă. obține ( 'Hawkeye' ) ;
Sistem . afară . println ( „Cheia preluată pentru valoarea specificată este: ” + valoare1 ) ;
int valoarea2 = Echipă. getOrDefault ( 'Romanoff' , 10 ) ;
Sistem . afară . println ( 'ConcurrentHashMap: ' + Echipă ) ;
}
}

Explicația codului de mai sus:

  • Folosiți același „ ConcurrentHashMap ” care este creat în blocul de cod de mai sus.
  • În plus, aplicați „ obține() ” și treceți valoarea a cărei cheie va fi preluată în paranteză.
  • Mai mult, utilizând „ getOrDefault() ” metoda care ia doi parametri/valori, valoarea și cheia implicită. Dacă obiectul specificat este găsit în interiorul hărții, atunci cheia corespunzătoare este preluată. Și dacă valoarea specificată nu este găsită, atunci cheia implicită este folosită.
  • După aceea, stocați rezultatele ambelor metode în variabile și afișați-le pe consolă în scopuri de vizualizare.

După executarea blocului de cod de mai sus:

Instantaneul de mai sus afișează cheile legate de valorile preluate și tipărite pe consolă.

Concluzie

Pentru a elimina/șterge anumite elemente din „ ConcurrentHashMap ” cel ” elimina() ” se poate folosi metoda. Folosindu-l, programatorul poate șterge un element care are un anumit „ cheie ” sau corespunzătoare ” valoare ”. Cu utilizarea „ clar() ”, fiecare element care se află pe hartă este șters imediat. Pentru acces, „ entrySet() ”, “ keySet() ' și ' valori () ” se folosesc metode. Ei pot recupera toate „ chei/valori ”, “ chei ', și ' valorile ' de la ' ConcurrentHashMap ' o dată. Pentru a prelua doar anumite chei, „ obține ' și ' getOrDefault ” se folosesc metode.