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. få ( '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, ' få ' og ' getOrDefault ”-metoder brukes.