S.No.
|
Dictionary
|
Hash Table
|
1
|
|
A hash table is a data structure that maps keys to values by taking the hash value of the key (by applying some hash function to it) and mapping that to a bucket where one or more values is stored.
|
2
|
Dictionary is not a threadsafe.
|
Hashtable is threadsafe.
|
3
|
Dictionary is types means that the values need not to boxing.
|
Hashtable values need to be boxed or unboxed because it stored the values and keys as objects.
|
4
|
When you try to get the value of key which does not exists in the collection, the dictionary throws an exception of ‘KeyNotFoundException’.
|
When you try to get the value of key which does not exists in the collection, the Hashtable returns a NULL value.
|
5
|
When using large collection of key value pairs dictionary is not as good as Hashtable.
|
When using large collection of key value pairs hashtable would be considered more efficient than dictionary.
|
6
|
When we retrieve the record in collection the dictionary maintains the order of entries by which entries were added.
|
When we retrieve the record in collection the hashtable does not maintain the order of entries.
|
7
|
Dictionary relies on chaining.
|
Hashtable relies on rehashing.
|
8
|
Dictionary is Abstract Base class of Hash Table.
|
Hash Table is Derived by Dictionary class.
|
9
|
Dictionary is Generic Type.
|
Hash Table is not generic type.
|