Hvordan fjerne og få tilgang til ConcurrentHashMap-elementer i Java?

Hvordan Fjerne Og Fa Tilgang Til Concurrenthashmap Elementer I Java



« ConcurrentHashMap ”-klassen er den forbedrede versjonen av tradisjonelle HashMap. Det gir mange fordeler for programmereren som å spare mye tid, mer enkelhet og øker fleksibiliteten. Den kan utføre flere oppgaver side ved side samtidig, men for flere oppgraderinger av verdien av noder blir det bare gjort én oppgradering om gangen.

Denne artikkelen demonstrerer prosedyren for å fjerne og få tilgang til ConcurrentHashMap-elementer i Java.

Hvordan fjerne ConcurrentHashMap-elementer i Java?

De spesifikke elementene kan fjernes fra ' ConcurrentHashMap ' elementer gjennom ' fjerne() 'metoden. For å fjerne alle elementer samtidig, ' klar() metoden er det beste alternativet å velge.







Det er også to varianter av 'remove()'-metoden:



  • « fjern (nøkkel) ' sletter enheten som har spesifisert ' nøkkel ' fra 'ConcurrentHashMap'.
  • « fjern (nøkkel, verdi) ' sletter enheten som har spesifisert ' nøkkel ' langs den tilsvarende ' verdi ' fra 'ConcurrentHashMap'.

Besøk kodeblokken nedenfor for en bedre forklaring:



import java.util.concurrent.ConcurrentHashMap ;
klasse Rot
{
offentlig statisk tomrom hoved- ( String [ ] args ) //oppretting av main()-metoden
{ // ConcurrentHashMap-erklæring
ConcurrentHashMap Team = ny ConcurrentHashMap ( ) ;
Team. sette ( 'Thor' , 2 ) ;
Team. sette ( 'Rar' , 4 ) ;
Team. sette ( 'Hawkeye' , 6 ) ;
System . ute . println ( 'ConcurrentHashMap: ' + Team ) ;

int verdi = Team. fjerne ( 'Rar' ) ;
System . ute . println ( 'Verdien ' + verdi + ' er fjernet' ) ;
System . ute . println ( 'ConcurrentHashMap: ' + Team ) ;

boolsk resultat = Team. fjerne ( 'Hawkeye' , 6 ) ;
System . ute . println ( 'Er oppføringen {Hawkeye = 6} fjernet?' + resultat ) ;
System . ute . println ( 'Oppdatert ConcurrentHashMap: ' + Team ) ;

Team. klar ( ) ;
System . ute . println ( 'Oppdatert ConcurrentHashMap: ' + Team ) ;

}
}

Beskrivelse av kodeblokken ovenfor:





  • Først, 'ConcurrentHashMap' kalt ' Team ' opprettes, og deretter settes dummydata inn i den ved å bruke ' sette 'metoden.
  • Deretter ' fjerne() '-metoden brukes og nøkkelen til ' Rar ” blir overført til den. Denne metoden fjerner enheten fra kartet med nøkkelen 'Rartelig'.
  • Vis i tillegg de gjenværende elementene på kartet via 'ConcurrentHashMap'.
  • Pass nå ' nøkkel ' og tilsvarende ' verdi ' til ' fjerne() ” metode for å slette en enhet fra “ConcurrentHashMap” som har en spesifikk nøkkel og verdi.
  • Etter det, vis 'ConcurrentHashMap' for å visuelt se forskjellen.
  • Til slutt, bruk ' klar() '-metoden for å slette alle de bosatte elementene i 'ConcurrentHashMap'. Vis også 'ConcurrentHashMap' på konsollen på slutten.

Etter slutten av kompileringsfasen:



Øyeblikksbildet viser elementene som er fjernet fra ConcurrentHashMap.

Hvordan få tilgang til ConcurrentHashMap-elementer i Java?

Elementene i ' ConcurrentHashMap ' kan nås ved å bruke flere grupper av metoder. Den første gruppen inkluderer ' entrySet() ', ' keySet() ' og ' verdier() 'metoder. De brukes til å hente alle elementene samtidig. Ved å bruke metodene ovenfor kan programmereren velge å hente alle ' nøkler ', ' verdier ' eller begge ' nøkkel/verdi ” kartlegging av kartet.

Besøk koden nedenfor for å forstå den praktiske implementeringen av metodene ovenfor:

import java.util.concurrent.ConcurrentHashMap ;

klasse Hoved {
offentlig statisk tomrom hoved- ( String [ ] args ) //oppretting av main()-metoden
{ // ConcurrentHashMap-erklæring
ConcurrentHashMap Team = ny ConcurrentHashMap ( ) ;
Team. sette ( 'Thor' , 2 ) ;
Team. sette ( 'Rar' , 4 ) ;
Team. sette ( 'Hawkeye' , 6 ) ;
Team. sette ( 'Svart panter' , 8 ) ;
System . ute . println ( 'ConcurrentHashMap: ' + Team ) ;
System . ute . println ( 'Hent nøkkel og verdier: ' + Team. oppføringSett ( ) ) ;
System . ute . println ( 'Hent nøkler:' + Team. tastesett ( ) ) ;
System . ute . println ( 'Hent verdier: ' + Team. verdier ( ) ) ;
}
}

Beskrivelse av kodeblokken ovenfor:

  • Lag først et 'ConcurrentHashMap' kalt ' Team ' og sett inn flere elementer i den ved å bruke ' sette() 'metoden.
  • Deretter viser du 'ConcurrentHashMap' på konsollen ved å bruke ' out.println() 'metoden.
  • Deretter bruker du ' entrySet() ”-metoden for å hente alle dataene på kartet.
  • Etter det, bruk ' keySet() ” metode for å hente kun nøkler fra kartet.
  • Til slutt bruker du ' verdier() ” metode for å hente kun verdier knyttet til hver nøkkel. Dette returnerer bare verdier i rekkefølge.

Etter utførelse av koden ovenfor:

I øyeblikksbildet ovenfor vises utdataene fra de ovenfor brukte metodene på konsollen. Og ulike fargede grenser brukes til å skape en visuell separasjon mellom utdataene fra hver metode.

Nå inkluderer den andre gruppen ' få() ' og ' getOrDefault() 'metoder. Disse metodene brukes til å hente ' nøkler ' fra ' ConcurrentHashMap '. Gå for eksempel til kodeblokken nedenfor:

import java.util.concurrent.ConcurrentHashMap ;
klasse Hoved {
offentlig statisk tomrom hoved- ( String [ ] args ) //oppretting av main()-metoden
{ // ConcurrentHashMap-erklæring
ConcurrentHashMap Team = ny ConcurrentHashMap ( ) ;
Team. sette ( 'Thor' , 2 ) ;
Team. sette ( 'Rar' , 4 ) ;
Team. sette ( 'Hawkeye' , 6 ) ;
Team. sette ( 'Svart panter' , 8 ) ;
System . ute . println ( 'Bruker getOrDefault(): ' + verdi2 ) ;

int verdi1 = Team. ( 'Hawkeye' ) ;
System . ute . println ( 'Hentet nøkkel for spesifisert verdi er: ' + verdi1 ) ;
int verdi2 = Team. getOrDefault ( 'Romanoff' , 10 ) ;
System . ute . println ( 'ConcurrentHashMap: ' + Team ) ;
}
}

Forklaring av koden ovenfor:

  • Bruk det samme ' ConcurrentHashMap ” som er opprettet i kodeblokken ovenfor.
  • Bruk i tillegg ' få() ”-metoden og send verdien hvis nøkkel skal hentes innenfor parentesen.
  • Dessuten, ved å bruke ' getOrDefault() ” metode som tar to parametere/verdier, verdien og standardnøkkelen. Hvis det spesifiserte objektet blir funnet inne på kartet, blir den tilsvarende nøkkelen hentet. Og hvis den angitte verdien ikke blir funnet, blir standardnøkkelen brukt.
  • Etter det lagrer du resultatene av begge metodene i variabler og viser dem på konsollen for visualiseringsformål.

Etter utførelse av kodeblokken ovenfor:

Øyeblikksbildet ovenfor viser nøklene i forhold til verdiene som er hentet og skrevet ut på konsollen.

Konklusjon

For å fjerne/slette bestemte elementer fra ' ConcurrentHashMap 'den' fjerne() metoden kan brukes. Ved å bruke den kan programmereren slette et element som har en bestemt ' nøkkel ' eller tilsvarende ' verdi '. Ved bruk av ' klar() ”-metoden, blir hvert element som ligger på kartet slettet på en gang. For tilgang, ' entrySet() ', ' keySet() ' og ' verdier() ”-metoder brukes. De kan hente alle ' nøkler/verdier ', ' nøkler ', og ' verdier ' fra ' ConcurrentHashMap ' med en gang. For å hente bare spesifikke nøkler, ' ' og ' getOrDefault ”-metoder brukes.