Java / Map and its implementations
List the differences between HashTable and HashMap in Java collections.
|HashMap is not synchronized and therefore it is not thread safe.||HashTable is internally synchronized and therefore it is thread safe.|
|HashMap allows maximum one null key and any number of null values.||HashTable does not allow null keys and null values.|
|Iterators returned by the HashMap are fail-fast in nature.||Enumeration returned by the HashTable are fail-safe in nature.|
|HashMap extends AbstractMap class.||HashTable extends Dictionary class.|
|HashMap returns only iterator to traverse.||HashTable returns both Iterator as well as Enumeration for traversal.|
|HashMap is fast.||HashTable is slow.|
|HashMap is not a legacy class.||HashTable is a legacy class.|
|HashMap is preferred in single threaded applications. If you want to use HashMap in multi threaded application, wrap it using ||Although HashTable is there to use in multi threaded applications, now a days it is not at all preferred. Because, ConcurrentHashMap is better option than HashTable.|
More Related questions...