HashTable is synchronized and doesn’t permit nulls.
HashMap is not synchronized and permits nulls.
HashMap does not guarantee that the order of the map will remain constant over time.
Iterator in the HashMap is fail-safe while the enumerator for the Hashtable isn't.