何时何地使用 Dictionary verses Hashtable? [复制]

Posted

技术标签:

【中文标题】何时何地使用 Dictionary verses Hashtable? [复制]【英文标题】:When and where to Use Dictionary verses Hashtable? [duplicate] 【发布时间】:2014-04-20 20:17:03 【问题描述】:

我知道 Hashtable 和 Dictionary 的优缺点。

我想知道哈希表何时优于字典?

【问题讨论】:

你确定你知道两者的优缺点吗? 看看***.com/questions/1089132/…和***.com/questions/301371/… 是的,我知道基础知识,但我不知道哈希表优于字典的场景。 查看@SonerGönül 链接的第一个问题的第一个答案,这是解释 您何时更喜欢通常速度较慢、类型不安全且需要您提供更多代码才能在任何重要场景中使用的东西? 【参考方案1】:

HashTable 不是泛型集合,因此您可以将任何类型(对象)类型保存到 Hashtable 中,并且它的类型在编译时是未知的。

Dictionary 是一个 Generic 集合,所以你需要在保存元素之前指定类型,所以它是type safe

我想知道哈希表何时优于字典?

我认为这不是真的,因为 DictionaryTypesafe 并且速度更快,因为没有元素的 boxing and unboxing 负担,因为它的元素类型在编译时是已知的。

所以你应该考虑使用Dictionary 而不是Hash-Table

【讨论】:

以上是关于何时何地使用 Dictionary verses Hashtable? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

BaseHTTPServer 和 SimpleHTTPServer 有啥区别?何时何地使用它们?

Twig 渲染与包含 - 何时何地使用其中一个?

NHibernate ISession Flush:何时何地使用它,为啥?

分裂何时何地发生?

SQL 中何时何地使用单引号? [复制]

何时/何地在 FastAPI 中使用正文/路径/查询/字段?