Razlika između HashMap i HashTable

Ključna razlika: U računalnoj znanosti, hashTable ili hashMap se odnosi na strukturu podataka koja povezuje tipke (imena) s vrijednostima (atributima). U Javi postoje neke važne razlike između njih, kao što su: HashTable je sinkroniziran i HashMap je nesinkroniziran. HashTable ne dopušta null tipke. Međutim, HashMap dopušta jedan ključ null i bilo koji broj null vrijednosti.

HashMap i hashTable su strukture podataka koje su dio Java zbirke. Oni koriste parove ključ / vrijednost kako bi pohranili objekte. Oba dijele neke sličnosti, kao što su i implementirati java.util.Map sučelje i oba rade na principu raspršivanja. Međutim, kada ih spominjemo u kontekstu Java programskog jezika, postoje brojne razlike između njih.

HashTable se koristi za pohranjivanje i dohvaćanje vrijednosti pomoću ključa. U tu svrhu ključ mora biti jedinstven. Tablica koja se koristi za spremanje parova ključa i vrijednosti poznata je kao hash-tablica. Hash tablica se formira pomoću algoritma koji hešira ključeve. Ova hash funkcija se koristi za dodjeljivanje brojeva ulaznim podacima, a zatim se podaci pohranjuju kao indeks indeksa koji odgovara izračunatom ili procijenjenom broju.

Kao hashTable, hashMap također radi na istim principima raspršivanja. Može se promatrati kao implementacija sučelja Karte temeljenog na hash-tablici. Međutim, razlikuje se od tablice na nekoliko točaka. HashMap je nesinkroniziran, dok je hashTable sinkroniziran. Sinkronizacija znači da u vremenu čestica, samo jedna nit može modificirati tablicu. Stoga, da bi se izvršila operacija ažuriranja na hashTable, zaključavanje se mora dobiti na stolu. Za to određeno vrijeme, druge teme moraju čekati. Nakon otključavanja, drugi navoji mogu nastaviti i raditi na stolu. Druga velika razlika između ta dva je da hashTable ne dopušta null ključ. Međutim, hashMap dopušta jedan ključ null i bilo koji broj null vrijednosti.

Usporedba između HashMap i HashTable:

HashMap

Hashtable

Sinkronizacija

Nije sinkronizirana

Sinkronizirana je (sigurna nit)

Null vrijednosti

Ona dopušta null vrijednosti kao ključ i vrijednost

Ne dopušta nulte vrijednosti

Uvod u java

Java verzija 1.2

Prva verzija java razvojnog paketa

Izvođenje

Komparativno bolje

Komparativno siromašni

Proširuje

Proširuje klasu AbstractMap

On proširuje klasu rječnika koja je prilično stara

Ponavljanje ključeva

Iterator se koristi za ponavljanje tipki

Za ponavljanje ključeva koristi se sučelje za popisivanje

Prijave

Bolje za aplikacije bez navoja

Općenito, sigurno za višenitne aplikacije

serialization

Nije serijski

serijalizirani

Alternativa

Može se koristiti istodobni hashMap za multi-thread okruženje

Nema takve alternative

Preporučeno

Vezani Članci

  • razlika između: Razlika između Samsung Galaxy Note 8.0 i Samsung Galaxy Mega 5.8

    Razlika između Samsung Galaxy Note 8.0 i Samsung Galaxy Mega 5.8

    Ključna razlika: Samsung Galaxy Note 8.0 nastoji popuniti prazninu između Galaxy Note II i Galaxy Note 10.1. Galaxy Note 8 ima 8 inčni TFT zaslon osjetljiv na dodir s rezolucijom 800 x 1280 piksela. Uređaj pokreće četverojezgreni 1, 6 GHz Cortex-A9 i 2 GB RAM-a. Uređaj radi na Android OS-u, v4.1.2 (J
  • razlika između: Razlika između uzajamnih fondova i dionica

    Razlika između uzajamnih fondova i dionica

    Ključna razlika: uzajamni fondovi i dionice su dvije različite vrste dostupnih investicijskih opcija. Dionice su vlasnički instrumenti koji nude vlasništvo u društvu u zamjenu za novac. Investitor ulaže kapital u zamjenu za glasačka prava u društvu. Iako se može kupiti dionica tvrtke, može se ulagati iu uzajamni fond. Umjesto
  • razlika između: Razlika između mobilnog i internetskog bankarstva

    Razlika između mobilnog i internetskog bankarstva

    Ključna razlika: Osnovna razlika između mobilnog bankarstva i internetskog bankarstva je u tome što se mobilnom bankarstvu pristupa putem aplikacije na pametnom telefonu, dok se internetskom bankarstvu pristupa putem preglednika, obično na računalu. U današnjem digitalnom dobu ljudi su navikli da sve informacije imaju na dohvat ruke. Ne s
  • razlika između: Razlika između ciklusa i bicikla

    Razlika između ciklusa i bicikla

    Ključna razlika: Ciklus se odnosi na redoviti proces rotacije, tip motora koji može biti u dva ili četiri ciklusa, dok se oblik s dva ciklusa naziva biciklom. Bicikl je vozilo s jednim pogonom, s jednim kotačem, s dva kotača, jedan iza drugog, pričvršćen za okvir. Ciklus i bicikl nemaju međusobne razlike, oni znače jedno te isto. Izumi ci
  • razlika između: Razlika između ne- i ne-

    Razlika između ne- i ne-

    Ključna razlika: Un- i Non- su dvije različite vrste negativnih prefiksa, što znači da su dio riječi koje treba dodati drugim riječima kako bi se promijenilo njihovo značenje. Prefiks ne predstavlja najkorisniji prefiks jer je najsvestraniji. Može se koristiti na bilo koji način is bilo kojom riječju. Razlikuj
  • razlika između: Razlika između Roku Stick i Amazon Fire Stick

    Razlika između Roku Stick i Amazon Fire Stick

    Ključna razlika: Roku Stick i Amazon Fire Stick i dva različita video streaming uređaja. Kao što ime sugerira Amazon Fire Stick je dizajniran i na tržištu Amazon, a Roku Stick je dizajniran i na tržištu Roku. Obje su prilično slične, ali ipak postoje neke razlike između njih. Roku Stick i Amazon Fire Stick i dva različita video streaming uređaja koji su dostupni na tržištu. Kao što ime s
  • razlika između: Razlika između BMP i PNG

    Razlika između BMP i PNG

    Ključna razlika: Bitmap se obično odnosi na nekomprimiranu sliku. U ovom formatu, slike se prikazuju piksel po pikselu koje se sastavljaju kako bi oblikovale sliku. PNG je kratica za Portable Network Graphics. Nastala je kao poboljšana i nepatentirana zamjena za GIF (Graphics Interchange Format). Dostupno je mnogo različitih formata datoteka. Oč
  • razlika između: Razlika između Leoparda i Snow Leoparda

    Razlika između Leoparda i Snow Leoparda

    Ključna razlika: Mac OS X Leopard (verzija 10.5) bio je šesti glavni OS koji je tvrtka objavila u listopadu 2007. i služio je kao Appleov desktop i poslužiteljski operativni sustav za Macintosh računala. Mac OS X Snow Leopard (verzija 10.6) je sedmi glavni operativni sustav koji je izdao Apple. To je nadogradnja na izvornu Leopard verziju 10.5. A
  • razlika između: Razlika između Windows Phone 7 i Windows Phone 8

    Razlika između Windows Phone 7 i Windows Phone 8

    Ključna razlika: Windows Phone 7 nije baš nadogradnja sustava Windows Mobile 6.5; to je potpuno obnovljen i novi operativni sustav. Windows Phone 7 je izgrađen na drugom kernelu iz sustava Windows Mobile i nije kompatibilan unatrag. Windows Phone 7 bio je prilično velik korak od operativnog sustava Windows Mobile 6.5.

Izbor Urednika

Razlika između kristala i stakla

Ključna razlika: Staklo je generičko ime, dok je kristal potkategorija stakla, načinjen na isti način kao i staklo, ali s različitim materijalima. Dakle, svi kristali su stakla, ali nije sve staklo kristal. Postoje tri glavna kriterija za kristal koji je uspostavila Europska unija 1969. godine: sadržaj olova veći od 24%, gustoća veća od 2, 90 i indeks refleksije od 1, 545. Znanstv