Hashmap é uma implementação leve da hashtable (implementação não-thread).
O hashmap permite nulo como uma chave ou valor de uma entrada, enquanto a hashtable não.
O hashmap remove o hashtable contém o método e altera -o para contém valores e contains. Porque o método contém é fácil causar mal -entendidos.
Heritos de hashtable da classe de dicionário, e o hashmap é uma implementação da interface do mapa introduzida pelo Java 1.2.
A maior diferença é que o método de hashtable é sincronizado, enquanto o hashmap não é.
Os algoritmos de hash/rehash usados por hashtable e hashmap são aproximadamente os mesmos, portanto não haverá grande diferença no desempenho.