Kā noņemt un piekļūt ConcurrentHashMap elementiem Java?

Ka Nonemt Un Pieklut Concurrenthashmap Elementiem Java



' ConcurrentHashMap ” klase ir tradicionālās HashMap uzlabotā versija. Programmētājam tas sniedz daudz priekšrocību, piemēram, ietaupa daudz laika, vairāk atvieglo un uzlabo elastību. Tas var vienlaikus veikt vairākus uzdevumus blakus, taču vairākiem mezglu vērtības jauninājumiem vienlaikus tiek veikts tikai viens jauninājums.

Šajā rakstā ir parādīta procedūra, kā noņemt un piekļūt ConcurrentHashMap elementiem Java.

Kā noņemt ConcurrentHashMap elementus Java?

Konkrētos elementus var noņemt no ' ConcurrentHashMap ' elementi, izmantojot ' noņemt () ” metode. Lai noņemtu visus elementus uzreiz, ' skaidrs () ” metode ir labākā izvēles iespēja.







Ir arī divi “remove()” metodes varianti:



  • ' noņemt (atslēga) ” dzēš entītiju, kurai ir norādīts taustiņu ” no “ConcurrentHashMap”.
  • ' noņemt (atslēga, vērtība) ' dzēš entītiju, kas ir norādījusi ' taustiņu ” gar atbilstošo ” vērtību ” no “ConcurrentHashMap”.

Apmeklējiet tālāk norādīto koda bloku, lai iegūtu labāku skaidrojumu:



imports java.util.concurrent.ConcurrentHashMap ;
klasē Sakne
{
publiski statisks nederīgs galvenais ( Stīga [ ] args ) //main() metodes izveide
{ // ConcurrentHashMap deklarācija
Vienlaicīga HashMap komanda = jauns ConcurrentHashMap ( ) ;
Komanda. ielieciet ( 'Tors' , 2 ) ;
Komanda. ielieciet ( 'Savādi' , 4 ) ;
Komanda. ielieciet ( 'Hawkeye' , 6 ) ;
Sistēma . ārā . println ( 'ConcurrentHashMap:' + Komanda ) ;

starpt vērtību = Komanda. noņemt ( 'Savādi' ) ;
Sistēma . ārā . println ( 'Vērtība ' + vērtību + 'ir noņemts' ) ;
Sistēma . ārā . println ( 'ConcurrentHashMap:' + Komanda ) ;

Būla rezultāts = Komanda. noņemt ( 'Hawkeye' , 6 ) ;
Sistēma . ārā . println ( 'Vai ieraksts {Hawkeye = 6} ir noņemts?' + rezultāts ) ;
Sistēma . ārā . println ( 'Atjaunināta ConcurrentHashMap:' + Komanda ) ;

Komanda. skaidrs ( ) ;
Sistēma . ārā . println ( 'Atjaunināta ConcurrentHashMap:' + Komanda ) ;

}
}

Iepriekš minētā koda bloka apraksts:





  • Pirmkārt, “ConcurrentHashMap” ar nosaukumu “ Komanda tiek izveidots, un pēc tam tajā tiek ievietoti fiktīvie dati, izmantojot ielieciet ” metode.
  • Tālāk “ noņemt () tiek izmantota metode un atslēga ' Dīvaini ” tiek nodota tai. Šī metode no kartes noņem entītiju, kuras atslēga ir “Savādi”.
  • Turklāt, izmantojot “ConcurrentHashMap”, parādiet atlikušos kartes elementus.
  • Tagad ejiet garām ' taustiņu ” un atbilstošais „ vērtību 'uz' noņemt () ” metodi, lai izdzēstu entītiju no “ConcurrentHashMap”, kurai ir noteikta atslēga un vērtība.
  • Pēc tam parādiet “ConcurrentHashMap”, lai vizuāli redzētu atšķirību.
  • Beigās izmantojiet ' skaidrs () ” metodi, lai izdzēstu visus esošos elementus “ConcurrentHashMap”. Konsoles beigās parādiet arī “ConcurrentHashMap”.

Pēc apkopošanas posma beigām:



Momentuzņēmums parāda elementus, kas ir noņemti no ConcurrentHashMap.

Kā piekļūt ConcurrentHashMap elementiem Java?

elementi ' ConcurrentHashMap ” var piekļūt, izmantojot vairākas metožu grupas. Pirmajā grupā ietilpst ' ierakstsSet() ”, “ keySet() ' un ' vērtības () ' metodes. Tos izmanto, lai izgūtu visus elementus vienlaikus. Izmantojot iepriekš minētās metodes, programmētājs var izvēlēties izgūt visus ' atslēgas ”, “ vērtības ' vai abi ' atslēga/vērtība ” kartes kartēšana.

Apmeklējiet tālāk norādīto kodu, lai izprastu iepriekš minēto metožu praktisko ieviešanu:

imports java.util.concurrent.ConcurrentHashMap ;

klasē Galvenā {
publiski statisks nederīgs galvenais ( Stīga [ ] args ) //main() metodes izveide
{ // ConcurrentHashMap deklarācija
Vienlaicīga HashMap komanda = jauns ConcurrentHashMap ( ) ;
Komanda. ielieciet ( 'Tors' , 2 ) ;
Komanda. ielieciet ( 'Savādi' , 4 ) ;
Komanda. ielieciet ( 'Hawkeye' , 6 ) ;
Komanda. ielieciet ( 'Melnā pantera' , 8 ) ;
Sistēma . ārā . println ( 'ConcurrentHashMap:' + Komanda ) ;
Sistēma . ārā . println ( 'Izgūt atslēgu un vērtības:' + Komanda. ierakstsSet ( ) ) ;
Sistēma . ārā . println ( 'Izgūt atslēgas:' + Komanda. taustiņu komplekts ( ) ) ;
Sistēma . ārā . println ( 'Izgūt vērtības:' + Komanda. vērtības ( ) ) ;
}
}

Iepriekš minētā koda bloka apraksts:

  • Vispirms izveidojiet “ConcurrentHashMap” ar nosaukumu “ Komanda un ievietojiet tajā vairākus elementus, izmantojot ' likt () ” metode.
  • Pēc tam konsolē parādiet “ConcurrentHashMap”, izmantojot “ out.println() ” metode.
  • Pēc tam izmantojiet ' ierakstsSet() ” metodi, lai izgūtu visus kartē esošos datus.
  • Pēc tam izmantojiet ' keySet() ” metodi, lai no kartes izgūtu tikai atslēgas.
  • Beigās izmantojiet ' vērtības () ” metodi, lai izgūtu tikai ar katru atslēgu saistītās vērtības. Tas atgriež tikai vērtības pēc kārtas.

Pēc iepriekš minētā koda izpildes:

Iepriekš minētajā momentuzņēmumā konsolē tiek parādīta iepriekš izmantoto metožu izvade. Un tiek izmantotas dažādu krāsu robežas, lai izveidotu vizuālu atdalīšanu starp katras metodes izvadi.

Tagad otrajā grupā ietilpst “ gūt() ' un ' getOrDefault() ' metodes. Šīs metodes tiek izmantotas, lai izgūtu ' atslēgas ' no ' ConcurrentHashMap ”. Piemēram, apmeklējiet tālāk norādīto koda bloku:

imports java.util.concurrent.ConcurrentHashMap ;
klasē Galvenā {
publiski statisks nederīgs galvenais ( Stīga [ ] args ) //main() metodes izveide
{ // ConcurrentHashMap deklarācija
Vienlaicīga HashMap komanda = jauns ConcurrentHashMap ( ) ;
Komanda. ielieciet ( 'Tors' , 2 ) ;
Komanda. ielieciet ( 'Savādi' , 4 ) ;
Komanda. ielieciet ( 'Hawkeye' , 6 ) ;
Komanda. ielieciet ( 'Melnā pantera' , 8 ) ;
Sistēma . ārā . println ( 'Izmantojot getOrDefault():' + vērtība2 ) ;

starpt vērtība1 = Komanda. gūt ( 'Hawkeye' ) ;
Sistēma . ārā . println ( 'Izgūtā atslēga norādītajai vērtībai ir: ' + vērtība1 ) ;
starpt vērtība2 = Komanda. getOrDefault ( 'Romanovs' , 10 ) ;
Sistēma . ārā . println ( 'ConcurrentHashMap:' + Komanda ) ;
}
}

Iepriekš minētā koda skaidrojums:

  • Izmantojiet to pašu ' ConcurrentHashMap ”, kas ir izveidots iepriekš minētajā koda blokā.
  • Turklāt izmantojiet ' gūt() ” metodi un ievadiet tās iekavās vērtību, kuras atslēga tiks izgūta.
  • Turklāt, izmantojot ' getOrDefault() ” metode, kas izmanto divus parametrus/vērtības, vērtību un noklusējuma atslēgu. Ja norādītais objekts tiek atrasts kartē, tiek izgūta atbilstošā atslēga. Un, ja norādītā vērtība netiek atrasta, tiek izmantota noklusējuma atslēga.
  • Pēc tam saglabājiet abu metožu rezultātus mainīgajos un vizualizācijas nolūkos parādiet tos konsolē.

Pēc iepriekš minētā koda bloka izpildes:

Iepriekš redzamajā momentuzņēmumā ir parādīti taustiņi saistībā ar vērtībām, kas izgūtas un izdrukātas konsolē.

Secinājums

Lai noņemtu/dzēstu konkrētus elementus no “ ConcurrentHashMap '' noņemt () ” metodi var izmantot. Izmantojot to, programmētājs var izdzēst elementu, kuram ir noteikta ' taustiņu ' vai atbilstošs ' vērtību ”. Izmantojot ' skaidrs () ” metodi, katrs kartē esošais elements tiek dzēsts uzreiz. Lai piekļūtu, “ ierakstsSet() ”, “ keySet() ' un ' vērtības () ” metodes tiek izmantotas. Viņi var izgūt visu atslēgas/vērtības ”, “ atslēgas ', un ' vērtības ' no ' ConcurrentHashMap ” uzreiz. Lai izgūtu tikai noteiktas atslēgas, ' gūt ' un ' getOrDefault ” metodes tiek izmantotas.