一尘不染

为什么在C#中字典比哈希表更受青睐?

c#

在大多数编程语言中,字典比哈希表更受青睐。背后的原因是什么?


阅读 230

收藏
2020-05-19

共1个答案

一尘不染

对于它的价值,字典 概念上 一个哈希表。

如果您的意思是“为什么我们使用Dictionary<TKey, TValue>类而不是Hashtable类?”,那么这是一个简单的答案:Dictionary<TKey, TValue>是泛型类型,Hashtable不是。这意味着您可以使用来获得类型安全性Dictionary<TKey, TValue>,因为您不能在其中插入任何随机对象,也不必强制转换取出的值。

有趣的是,Dictionary<TKey, TValue>.NET
Framework中的实现基于Hashtable,您可以从其源代码中的此注释中看出:

通用字典是从Hashtable的来源复制而来的

资源

2020-05-19