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.

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 |