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

  • populární srovnání: Rozdíl mezi odtučněným mlékem a tonizovaným mlékem

    Rozdíl mezi odtučněným mlékem a tonizovaným mlékem

    Klíčový rozdíl: "Odtučněné mléko" je mléko, ze kterého byla smetana odstraněna. Proces probíhá k odstranění tuku z mléka. Naproti tomu " Toned milk" je směs sušeného mléka v prášku a vody v celém byvolém mléce, aby se snížil obsah tuku. Mléko je nejdůležitější nápoj, který člověk musí mít každý den. To je považováno za kompletní a skvělé
  • populární srovnání: Rozdíl mezi Nokia Lumia 928 a Sony Xperia SP

    Rozdíl mezi Nokia Lumia 928 a Sony Xperia SP

    Klíčový rozdíl: Společnost Nokia nedávno oznámila nový telefon do své řady; Lumia 928. Telefon je dodáván s kapacitou obrazovky AMOLED s úhlopříčkou 4, 5 palce a širokým zadním rámem. Telefon je poměrně objemný a těžký, ve srovnání s jinými novějšími smartphony, které se zaměřují na získání tenčí a lehčí. Xperia SP je 4, 6palcový TFT kapacitní do
  • populární srovnání: Rozdíl mezi Skydiving a paraglidingem

    Rozdíl mezi Skydiving a paraglidingem

    Hlavní rozdíl: Zařízení používané při paraglidingu a parašutismu jsou stejné, ale používají se v různých formách. Skydiving zahrnuje skákání s padákem z letadla, zatímco paragliding se provádí pomocí bezmotorového letadla. Obě parašutismus a paragliding jsou extrémně odlišné sporty. Na začátku roku 1797 vyskočil
  • populární srovnání: Rozdíl mezi Dubajem a Spojenými arabskými emiráty

    Rozdíl mezi Dubajem a Spojenými arabskými emiráty

    Klíčový rozdíl: Dubaj je město ve Spojených arabských emirátech a nachází se v rámci stejnojmenného emirátu, zatímco Spojené arabské emiráty jsou arabské země, která se nachází na jihovýchodě Arabského poloostrova v Perském zálivu a sestává ze sedmi emirates včetně Dubaje. Někdy se Dubaj a Spojené arab
  • populární srovnání: Rozdíl mezi dary a ionice

    Rozdíl mezi dary a ionice

    Klíčový rozdíl: Charakteristickým znakem dárcovského sloupce je skutečnost, že nemají základ. Samotný sloupec je krátký, tvrdý a těžký. Hřídel sloupku je plný, obvykle s 20 flétnami, zatímco hlavní město je jednoduché a rozjasněné. Ionové sloupce se považují za nejvyšší a nejtenčí ze tří typů sloupců. Hlavní rozlišovací vlastnost iontového
  • populární srovnání: Rozdíl mezi řasami a houbami

    Rozdíl mezi řasami a houbami

    Klíčový rozdíl: řasy nebo singulární: řasa jsou skupina jednoduchých, typicky autotrofických organismů, od jednobuněčné až po mnohočetné formy. Mořské řasy a sladkovodní mech jsou druhy řas. Houby jsou skupinou jednobuněčných nebo mnohojaderných organismů, které žijí a rostou na rozložené hmotě. Houby, kvasnice, lanýže jsou dr
  • populární srovnání: Rozdíl mezi bakteriemi a bakteriemi

    Rozdíl mezi bakteriemi a bakteriemi

    Klíčový rozdíl: Bakterie jsou jednobuněčné mikroorganismy, které patří do skupiny prokaryotik. Germ je nemedikální termín, který se používá k označení mikroorganismu, zvláště ten, který může způsobit jakoukoli onemocnění. Příkladem bakterií je améba, houba, bakterie, richetchia, virus a mnoho dalších. Takže některé bakterie jsou také
  • populární srovnání: Rozdíl mezi hardwarem a softwarem

    Rozdíl mezi hardwarem a softwarem

    Hlavní rozdíl: Hardware je fyzický aspekt počítače, věc, kterou můžeme dotknout, jako je monitor, pevný disk atd. Software je nefyzický aspekt, který zahrnuje operační systém, aplikace, programy atd. Počítač je rozdělen hlavně na dvě části, hardware a software. Všechny komponenty počítače spadají do jedné z těchto kategorií. Hardware je fyzický aspekt po
  • populární srovnání: Rozdíl mezi kravským mlékem a mlékem z bizonů

    Rozdíl mezi kravským mlékem a mlékem z bizonů

    Klíčový rozdíl: Buffalo mléko obsahuje vyšší obsah pevných látek než kravské mléko. To činí buvolí mléko silnější a krémovější. Ve skutečnosti se bavlníkové mléko považuje za téměř dvojnásobný obsah tuku jako kravské mléko. Kromě toho se málo byvolého mléka považovalo za méně cholesterolu, více tuku a více kalorií než kravské mléko. Mléko je jednou z nejzákladnějších potravinářsk

Redakce Choice

Rozdíl mezi esencí a emulzí

Hlavní rozdíl: Esence nebo sérum se obecně považují za zvlhčující látky. Esence nebo séra jsou v podstatě čiré, husté, kapalné zvlhčující produkty. Některé společnosti mají tendenci označovat své výrobky jako sérum, zatímco jiné označují je jako esence. Emulze, na druhé straně, je prakticky druh lehkého zvlhčovače. Používá se hlavně před tonerem, al