Rozdíl mezi HashMap a HashTable

Klíčový rozdíl: V informatice má hashTable nebo hashMap odkaz na datovou strukturu, která spojuje klíče (názvy) s hodnotami (atributy). V jazyce Java existují mezi těmito dvěma důležitými rozdíly: HashTable je synchronizován a HashMap nesynchronizován. HashTable neumožňuje nulové klíče. HashMap však umožňuje jediný nulový klíč a libovolný počet nulových hodnot.

HashMap a hashTable jsou datové struktury, které jsou součástí kolekce Java. Pro ukládání objektů používají páry klíč-hodnota. Oba sdílejí některé podobnosti, jako je implementace rozhraní java.util.Map a obě pracují na principu hashování. Nicméně, když se na ně odkazujeme v kontextu s programovacím jazykem jazyka Java, existuje mezi těmito dvěma četnými rozdíly.

Heslo typu hashTable se používá k ukládání a načítání hodnoty pomocí klíče. Pro tento účel musí být klíč jedinečný. Tabulka, která slouží k ukládání párů klíčů a hodnot, je známá jako tabulka hash. Hash tabulka je tvořen pomocí algoritmu, který hashes klíče. Tato funkce hash se používá k přiřazení čísel vstupním datům a poté jsou data uložena jako index pole, který odpovídá vypočítanému nebo vyhodnocenému číslu.

Stejně jako hashTable, hashMap pracuje také na stejných principech hašování. Lze jej považovat za implementaci mapové tabulky založené na mapovém rozhraní. Nicméně se liší od hashTable na několika bodech. HashMap je nesynchronizovaný, zatímco hashTable je synchronizován. Synchronizace znamená, že v čase částic může upravit tabulku pouze jeden závit. Chcete-li provést operaci aktualizace na zařízení hashTable, musí být zámek na stole. Pro tento konkrétní čas musí ostatní vlákna čekat. Po odemknutí mohou ostatní vlákna pokračovat a pracovat na stole. Dalším velkým rozdílem mezi těmito dvěma je, že hashTable neumožňuje nulový klíč. HashMap však umožňuje jediný nulový klíč a libovolný počet nulových hodnot.

Srovnání mezi HashMap a HashTable:

HashMap

HashTable

Synchronizace

Není synchronizováno

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

Nulové hodnoty

Umožňuje hodnotu null jako klíč a hodnotu

Nepovoluje nulls

Úvod do java

Java verze 1.2

První verze vývojové sady Java

Výkon

Srovnatelně lepší

Srovnatelně špatné

Rozšiřuje

Rozšiřuje třídu AbstractMap

Rozšiřuje třídu slovníků, která je docela stará

Iterace klíčů

Iterátor se používá pro iteraci klíčů

Rozhraní výčtu se používá pro iterace klíče

Aplikace

Lepší pro aplikace bez závitů

Obvykle je bezpečný pro aplikace s více vlákny

Serializace

Není serializováno

Serializováno

Alternativní

Pro prostředí s více vlákny lze použít souběžný hashMap

Žádná taková alternativa

Doporučená

Související Články

  • rozdíl mezi: Rozdíl mezi dynamickým mikrofonem a kondenzátorem

    Rozdíl mezi dynamickým mikrofonem a kondenzátorem

    Hlavní rozdíl: Kondenzátorový mikrofon je typ mikrofonu, který běží na kondenzátoru. Kondenzátor je elektronické zařízení, které uchovává energii ve formě elektrostatického pole. Kondenzátor byl původně nazýván kondenzátorem. Stejně jako všechny mikrofony kondenzátorový mikrofon přeměňuje akustickou energii na elektrickou energii, ale pro to vyžaduje napájení z baterie nebo externího zdroje. Dynamické mikrofony jsou univerzál
  • rozdíl mezi: Rozdíl mezi zařízeními Nexus 4 a LG Optimus G

    Rozdíl mezi zařízeními Nexus 4 a LG Optimus G

    Klíčový rozdíl: Nexus 4 je čtvrtý Android smartphone s Androidem. Byl vyroben ve spolupráci s LG Electronics. Telefon funguje na operačním systému Android 4.2 (Jelly Bean), který byl spuštěn s telefonem. LG vyráběl LG Optimus G jako konkurenta pro špičkové chytré telefony dostupné na trhu, mezi něž patří i Nexus 4. A to navzdory tomu, že
  • rozdíl mezi: Rozdíl mezi BMI, ASCAP a SESAC

    Rozdíl mezi BMI, ASCAP a SESAC

    Klíčové rozdíly: Ve Spojených státech amerických působí tři hlavní organizace na ochranu práv: Americká společnost skladatelů, autorů a vydavatelů (ASCAP), Broadcast Music, Inc. (BMI) a Společnost autorů a skladatelů evropské scény ( SESAC). Je-li umělec vážně hovořit o hudebním průmyslu, doporučuje se, aby se připojil k organizaci práv k výkonu práva (PRO). PRO je agentura, která umělci po
  • rozdíl mezi: Rozdíl mezi Mega miliony a Powerball

    Rozdíl mezi Mega miliony a Powerball

    Klíčový rozdíl: Mega Millions a Powerball jsou dvě různé loterie, které jsou provozovány po celých Spojených státech. Hlavní rozdíl mezi těmito dvěma je fakt, že vstupenka na Mega Millions stojí 1 dolar a nabízí jackpot od 15 milionů dolarů, zatímco vstupenka Powerball stojí $ 2 a nabízí jackpot od 40 milionů dolarů. Každý má fantazii, že vyhr
  • rozdíl mezi: Rozdíl mezi Ruger MK I a MK II

    Rozdíl mezi Ruger MK I a MK II

    Klíčový rozdíl: První zbraň série, kterou zahájil Ruger, byl Ruger Standard Model .22 Auto. Vzhledem k tomu, že série postupovala, byl tento model často označován jako Ruger MK I. Standardní auto následovalo Ruger MK I Target, pak Ruger MK II a současný Ruger MK III a jeho varianty. První zbraň série, kterou vypustila Ruger, byl Ruger Standard Model .22 Auto. Jak postup
  • rozdíl mezi: Rozdíl mezi semenáčkem a semenáčkem

    Rozdíl mezi semenáčkem a semenáčkem

    Klíčový rozdíl: Seedling a stromek jsou dva různé mladistvé životní stadia stromu. Seedling označuje velmi mladý strom, který je méně než 1 palec v kontextu s DBH (průměr na výšce prsou). Po etapě semenáctví následuje fáze semena, která je obecně označena 1 až 6 palce v souvislosti s DBH. Seedling a stromek jsou sp
  • rozdíl mezi: Rozdíl mezi pracujícím na volné noze a partnerem

    Rozdíl mezi pracujícím na volné noze a partnerem

    Klíčový rozdíl: Jak naznačuje název, pracovník na částečný úvazek je někdo, kdo pracuje na částečný úvazek. Jsou zaměstnanci společnosti a stále jsou odpovědní společnosti. Nezávislý pracovník, na druhé straně, je samostatně výdělečně činný. Nepracují pro žádnou společnost jako zaměstnance, místo toho lze říci, že jsou spíše dodavatelem. Občas se může zdát obtížné rozlišovat mezi pr
  • rozdíl mezi: Rozdíl mezi benzínovým motorem a vznětovým motorem

    Rozdíl mezi benzínovým motorem a vznětovým motorem

    Hlavní rozdíl: Benzinový motor je spalovací motor se zážehovým zapalováním. Jak jeho jméno naznačuje, že běží na benzinu, také známý jako benzín. Proto je benzínový motor známý také jako benzinový motor, zejména v Severní Americe. Vznětový motor je spalovací motor pracující na naftě. Je také znám jako vznětový moto
  • rozdíl mezi: Rozdíl mezi Pachisi, Ludo a Parcheesi

    Rozdíl mezi Pachisi, Ludo a Parcheesi

    Klíčový rozdíl: Ludo a Parcheesi jsou dvě různé deskové hry, které jsou v podstatě podobné. Oba se vyvinuli z dávné indické hry nazvané Pachisi. Všechny tři mají stejný cíl, kterým je získat nejprve čtyři žetony v cílové čáře. Ludo a Parcheesi jsou dvě různé deskové hry, které jsou naprosto podobné. Ve skutečnosti jsou oba oba tak po

Redakce Choice

Rozdíl mezi zmrzlinou a Kulfi

Klíčový rozdíl: Zmrzlina a kulfi jsou oba zmrazené dezerty na bázi mléčných výrobků. Oba se liší v aspektech, jako je metoda přípravy, struktura a chuť. Kulfi je krémovější a hustší než zmrzlina. Na rozdíl od zmrzliny, přípravu kulfi nezahrnuje šlehání při mrazení. Zmrzlina je zmrzlý dezert na bázi mléčných výrobků. Vynález zmrzliny je spojován s mnoha