Rozdiel medzi HashMap a HashTable

Kľúčový rozdiel: V informatike má hashTable alebo hashMap odkaz na dátovú štruktúru, ktorá spája kľúče (mená) s hodnotami (atribútmi). V jazyku Java existujú medzi týmito dvoma dôležitými rozdielmi: HashTable je synchronizovaný a HashMap je nesynchronizovaný. HashTable nepovoľuje nulové kľúče. HashMap však umožňuje jediný nulový kľúč a ľubovoľný počet nulových hodnôt.

HashMap a hashTable sú dátové štruktúry, ktoré sú súčasťou kolekcie Java. Na ukladanie objektov používajú páry kľúč-hodnota. Obaja zdieľajú niektoré podobnosti, ako je implementácia rozhrania java.util.Map a obe pracujú na princípe hashovania. Avšak, keď ich odkazujeme do kontextu s programovacím jazykom Java, existujú medzi nimi obrovské rozdiely.

Heslo typu hashTable sa používa na ukladanie a načítanie hodnoty pomocou kľúča. Na tento účel musí byť kľúč jedinečný. Tabuľka, ktorá sa používa na ukladanie dvojíc kľúčov a hodnôt, je známa ako tabuľka hash. Hash tabuľka je vytvorená pomocou algoritmu, ktorý má kľúče. Táto funkcia hash sa používa na priradenie čísiel vstupným údajom a potom sa dáta ukladajú ako index poľa, ktorý zodpovedá vypočítanému alebo vyhodnotenému číslu.

Rovnako ako hashTable, hashMap pracuje aj na rovnakých princípoch hashovania. Môže sa to považovať za implementáciu mapového rozhrania založenú na hash table. Rozlišuje sa však od hashTable na niekoľkých bodoch. HashMap je nesynchronizovaný, zatiaľ čo hashTable je synchronizovaný. Synchronizácia znamená, že v čase častice je možné upraviť tabuľku len s jednou závitom. Ak chcete vykonať operáciu aktualizácie na hashTable, musí byť zámok získaný na stole. V tomto konkrétnom čase musia ostatné vlákna čakať. Po odomknutí môžu ostatné vlákna pokračovať a pracovať na stole. Ďalším hlavným rozdielom medzi týmito dvoma je, že hashTable neumožňuje nulový kľúč. HashMap však umožňuje jediný nulový kľúč a ľubovoľný počet nulových hodnôt.

Porovnanie HashMap a HashTable:

HashMap

Hashtable

synchronizácia

Nie je synchronizovaný

Je synchronizovaná (bezpečné vlákno)

Nulové hodnoty

Umožňuje hodnotu null ako kľúč a hodnotu

Nepovoľuje nuly

Úvod do java

Java verzia 1.2

Prvá verzia vývojovej sady Java

výkon

Porovnateľne lepšie

Porovnateľne slabé

rozširuje

Rozširuje triedu AbstractMap

Rozširuje triedu slovníkov, ktorá je dosť stará

Iterácia kľúčov

Iterátor sa používa na iteráciu kľúčov

Rozhranie výčtu sa používa pre klávesy s iteráciou

aplikácia

Lepšie pre aplikácie bez závitov

Vo všeobecnosti je bezpečné pre viacvláknové aplikácie

serializácie

Nie je serializované

serializovaný

alternatívne

Jeden môže použiť súbežný hashMap pre prostredie s viacerými vláknami

Žiadna takáto alternatíva

Odporúčaná

Súvisiace Články

  • populárne porovnania: Rozdiel medzi FAT32 a NTFS

    Rozdiel medzi FAT32 a NTFS

    Hlavný rozdiel: FAT32 a NTFS sú systémy súborov a diskové štandardy používané na rozdeľovanie a formátovanie pevných diskov. V porovnaní s tým je FAT32 staršia a jednoduchšia verzia systému NTFS, ktorá je nová a dobre vybavená verzia súborového systému. FAT32 je verzia tabuľky alokácie súborov, ktorá je k dispozícii v operačných systémoch Windows 95 OSR 2 a Windows 98. Je to bežný súborový systém,
  • populárne porovnania: Rozdiel medzi vlkom a šakalom

    Rozdiel medzi vlkom a šakalom

    Kľúčový rozdiel: Švábovci sú mŕtvi, omniví a predátori malých až stredne veľkých zvierat. Vlci sú väčší ako šakali a majú progresívnejšiu formu. Sú lepšie prispôsobené lovu väčších zvierat a sú sociálnejšie. Vlci a šakali sú rôzne druhy v tom istom rode, Canis. Šakalové sú mŕtvi, omniví a predátori malých až stredne veľkých zvierat. Vlci sú väčší ako šakali a majú progresívnejš
  • populárne porovnania: Rozdiel medzi Leaderom a šéfom

    Rozdiel medzi Leaderom a šéfom

    Kľúčový rozdiel: Lídri sú ľudia, ktorí sú zodpovední za inšpirovanie, vedenie a vedenie skupiny ľudí na ceste za spoločnú vec. Šéf je osoba, ktorá má na starosti pracovisko. Vedúci a šéf môže byť tá istá vec alebo dve odlišné veci v závislosti na vlastnostiach, ktoré má človek. Vedúci by mohol byť šéf alebo š
  • populárne porovnania: Rozdiel medzi systémami súborov NTFS a FAT

    Rozdiel medzi systémami súborov NTFS a FAT

    Hlavný rozdiel : Systémy NTFS a FAT sú oba systémy súborov. Obe sú dve rôzne metódy, ktoré ukladajú dáta štruktúrovaným spôsobom na diskový oddiel. NTFS znamená Nový systém súborov technológií, zatiaľ čo FAT znamená File Allocation Table. Súborový systém je najpopulárnejšia a najpoužívanejšia technika na ukladanie dát na rôznych typoch zariadení, ako je pevný disk, pamäťová karta, USB atď. Zariadenia zapisujú a ukladajú údaje do
  • populárne porovnania: Rozdiel medzi koktailom a mocktailom

    Rozdiel medzi koktailom a mocktailom

    Kľúčový rozdiel: Koktail je zmiešaný alkoholický nápoj, ktorý vyžaduje miešanie jedného typu alkoholu so šťavou, nealkoholickými nápojmi a iným ovocím alebo zmiešaním viacerých alkoholických nápojov so šťavou alebo ľadovým čajom. Mocktail je akýkoľvek miešaný nápoj, ktorý nemá alkohol. Názov mocktail je odvodený slovo
  • populárne porovnania: Rozdiel medzi Samsung Galaxy S4 Active a Blackberry Q10

    Rozdiel medzi Samsung Galaxy S4 Active a Blackberry Q10

    Kľúčový rozdiel: Spoločnosť Samsung oznámila, že do svojej zostavy pridal nový telefón, ktorý kombinuje robustnosť staršieho telefónu Samsung Xcover s funkciami a novým modelom Galaxy S4. S4 Active je odolný voči prachu a vode. Telefón je dodávaný s 5-palcovým Full HD TFT kapacitným dotykovým displejom, ktorý sa líši od AMOLED používaného v S4. BlackBerry Q10 má kapacitnú
  • populárne porovnania: Rozdiel medzi korčuľovaním a lyžovaním

    Rozdiel medzi korčuľovaním a lyžovaním

    Kľúčový rozdiel : Termín korčuľovanie znamená klzanie na ľade pomocou ľadových korčúľ. Lyžovanie je medzinárodný šport a slávna zábava, ktorá zahŕňa pripevnenie lyží na nohy a prechádzanie snehom. Korčuľovanie, ako to naznačuje jeho meno, znamená pohybovať sa na ľade pomocou korčúľ. Tieto korčule sú špeciálne vybave
  • populárne porovnania: Rozdiel medzi komentárom a komplimentom

    Rozdiel medzi komentárom a komplimentom

    Kľúčový rozdiel: Komentár je poznámka, ktorá sa používa na vyjadrenie názoru alebo reakcie, zatiaľ čo kompliment sa používa na vyjadrenie chvály, chvály alebo obdivu. Ľudské bytosti sú udelené krásnym darom reči a písania, vyjadrujú rôzne myšlienky a pocity. Slová majú veľký význam, a preto by mali byť použité primerane. Existujú rôzne spôsoby vyjadreni
  • populárne porovnania: Rozdiel medzi oboma a obidvoma

    Rozdiel medzi oboma a obidvoma

    Rozdiel kľúčov: " Buď" sa používa na označenie jedného zo skupiny. Skupina je spravidla dvoch členov, ale príležitostne môže byť skupina zložená z viac ako dvoch členov. Na druhej strane "obe" slúži na označenie dvoch z dvoch členov a je to termín, ktorý sa na ne vzťahuje kolektívne. Často používame slová &

Redakcia Choice

Rozdiel medzi dodávateľom a výrobcom

Hlavný rozdiel: Dodávatelia a výrobcovia sa vo svojich funkciách líšia. Dodávatelia dodávajú produkty a / alebo služby a výrobcovia sú výrobcovia a výrobcovia výrobkov a / alebo služieb. V obchodnom zmysle je dodávateľom "strana, ktorá dodáva tovar alebo služby", čo sa dá odlíšiť od dodávateľa alebo subdodávateľa, ktorý bežne pridáva špecializované vstupy do dodávok. Ich základnou funkciou je poskytov