Unterschied zwischen HashMap und Hashtable

HashMap und Hashtable werden beide verwendet, um Daten in Schlüssel- und Wertform zu speichern. Beide verwenden eine Hash-Technik, um eindeutige Schlüssel zu speichern.

Aber es gibt viele Unterschiede zwischen HashMap- und Hashtable-Klassen, die unten angegeben sind.

HashMapHash-tabelle
1) HashMap ist nicht synchronisiert . Es ist nicht Thread-sicher und kann ohne den richtigen Synchronisationscode nicht von vielen Threads gemeinsam genutzt werden.Hashtable ist synchronisiert . Es ist Thread-sicher und kann mit vielen Threads geteilt werden.
2) HashMap erlaubt einen Nullschlüssel und mehrere Nullwerte .Hashtable erlaubt keine Nullschlüssel oder -werte .
3) HashMap ist eine neue Klasse, die in JDK 1.2 eingeführt wurde .Hashtable ist eine Legacy-Klasse .
4) HashMap ist schnell .Hashtable ist langsam .
5) Wir können die HashMap als synchronisiert machen, indem wir diesen Code aufrufen:
Map m = Collections.synchronizedMap(hashMap);
Hashtable ist intern synchronisiert und kann nicht desynchronisiert werden.
6) HashMap wird von Iterator durchlaufen .Hashtable wird von Enumerator und Iterator durchlaufen .
7) Der Iterator in HashMap ist ausfallsicher .Der Enumerator in Hashtable ist nicht ausfallsicher .
8) HashMap erbt die Klasse AbstractMap .Hashtable erbt die Dictionary -Klasse.

osky