1.
HashMap allows null key and values whereas Hashtable doesn’t
allow null key and values.
2.
Hashtable is synchronized but HashMap is not synchronized. So
HashMap is better for single threaded environment, Hashtable is suitable for
multi-threaded environment.
3.
LinkedHashMap was
introduced in Java 1.4 as a subclass of HashMap, so incase you want iteration
order, you can easily switch from HashMap to LinkedHashMap but that is not the
case with Hashtable whose iteration order is unpredictable.
4.
HashMap provides Set of keys to iterate and hence it’s fail-fast
but Hashtable provides Enumeration of keys that doesn’t support this feature.
5.
Hashtable is considered to be legacy class and if you are
looking for modifications of Map while iterating, you should use
ConcurrentHashMap.
No comments:
Post a Comment