Java ConcurrentMap liides

Selles õpetuses õpime Java ConcurrentMapi liidest ja selle meetodeid.

ConcurrentMapLiides Java kogud raames annab niidi ohutu kaardil. See tähendab, et mitu lõime saavad korraga kaardile juurde pääseda, ilma et see mõjutaks kaardi kirjete järjepidevust.

ConcurrentMap on tuntud sünkroniseeritud kaardina.

See laiendab Mapi liidest.

Klass, mis rakendab rakendust ConcurrentMap

Kuna ConcurrentMapsee on liides, ei saa me sellest objekte luua.

ConcurrentMapLiidese funktsionaalsuste kasutamiseks peame kasutama ConcurrentHashMapseda rakendavat klassi .

Kuidas kasutada ConcurrentMapi?

Selle kasutamiseks ConcurrentMappeame java.util.concurrent.ConcurrentMappakendi kõigepealt importima . Kui pakett on imporditud, saate samaaegse kaardi luua järgmiselt.

 // ConcurrentMap implementation by ConcurrentHashMap CocurrentMap numbers = new ConcurrentHashMap(); 

Ülaltoodud koodis oleme loonud samaaegse kaardi nimega numbrid.

Siin,

  • Võti - kordumatu identifikaator, mida kasutatakse iga elemendi (väärtuse) seostamiseks kaardil
  • Väärtus - kaardil klahvidega seotud elemendid

ConcurrentMap meetodid

ConcurrentMapLiides sisaldab kõiki meetodeid Mapliides. Sellepärast, et see Mapon liidese superliides ConcurrentMap.

Kõigi nende meetodite kõrval on siin ConcurrentMapliidesele omased meetodid .

  • putIfAbsent () - sisestab määratud võtme / väärtuse kaardile, kui määratud võti pole veel ühegi väärtusega seotud.
  • arvuta () - arvutab sisestuse (võtme / väärtuse kaardistamine) määratud võtmele ja selle varem vastendatud väärtusele.
  • computeIfAbsent () - arvutab määratud võtme jaoks määratud funktsiooni kasutades väärtuse, kui võti pole veel ühegi väärtusega kaardistatud.
  • computeIfPresent () - arvutab uue võtme (võtme / väärtuse kaardistamine) määratud võtmele, kui võti on juba määratud väärtusega kaardistatud.
  • forEach () - pääsete juurde kõigile kaardi sisestustele ja tehke määratud toimingud.
  • ühenda () - ühendab uue määratud väärtuse määratud võtme vana väärtusega, kui võti on juba teatud väärtusega vastendatud. Kui võti pole juba kaardistatud, seostab meetod määratud väärtuse lihtsalt meie võtmega.

Lisateabe saamiseks külastage Java ConcurrentMap (ametlik Java dokumentatsioon).

ConcurrentMapi juurutamine rakenduses ConcurrentHashMap

 import java.util.concurrent.ConcurrentMap; import java.util.concurrent.ConcurrentHashMap; class Main ( public static void main(String() args) ( // Creating ConcurrentMap using ConcurrentHashMap ConcurrentMap numbers = new ConcurrentHashMap(); // Insert elements to map numbers.put("Two", 2); numbers.put("One", 1); numbers.put("Three", 3); System.out.println("ConcurrentMap: " + numbers); // Access the value of specified key int value = numbers.get("One"); System.out.println("Accessed Value: " + value); // Remove the value of specified key int removedValue = numbers.remove("Two"); System.out.println("Removed Value: " + removedValue); ) ) 

Väljund

 ConcurrentMap: (Üks = 1, Kaks = 2, Kolm = 3) Juurdepääsuväärtus: 1 Eemaldatud väärtus: 2 

Lisateabe saamiseks ConcurrentHashMapkülastage Java ConcurrentHashMap.

Huvitavad Artiklid...