調べた備忘。
HashMapとHashtableの違いは複数箇所存在するようだ。
-
Hashtable
はsynchronized
であることにたいして、HashMap
はそうではない。単一スレッドのケースではHashMap
の方が良いパフォーマンスを出す。 -
Hashtable
はnull
のkey/valueを受けつけない。対してHashMap
はnull
keyを一つ持てるし、valueとしてはnull
をいくらでも持つことができる。 -
HashMap
のサブクラスであるLinkedHashMap
を使いたいときにHashMap
であれば置き換えが容易だが、Hashtable
では面倒。
synchronization
が重要でないケースは、HashMap
を使用した方が便利であることが多い。
[Differences between HashMap and Hashtable?
](http://stackoverflow.com/questions/40471/differences-between-hashmap-and-hashtable) ですべて議論されているので参考にする。