Dictionary <string,string> vs Hashtable <string,string> </string,string> </string,string>

时间:2012-01-31 15:51:22

标签: asp.net-mvc razor

Hashtable<string,string>Dictionary<string,string>之间的确切差异是什么?

哪个更适合在Asp.net MVC中使用?

任何人都可以帮助我吗?

2 个答案:

答案 0 :(得分:8)

BCL中没有Hashtable<X, Y>这样的课程。有Hashtable类,它是Dictionary<Tkey, TValue>类的非泛型版本。它在.NET 1.0和1.1时使用,当时尚未在.NET中引入泛型。

或许你指的是HashSet<T>班?它表示包含唯一元素的无序集合。它具有标准的集合操作Add,Remove,Contains,但由于它使用基于散列的实现,因此这些操作是O(1)。它不是键/值哈希表。

  

哪个更适合在Asp.net MVC中使用?

这显然取决于您的具体要求以及您希望实现的目标。因此,您提出的正确问题不是Which of X or Y is better in ASP.NET MVC,而是Which of X or Y is better in order to achieve Z in ASP.NET MVC

答案 1 :(得分:0)

另外@ Darin的回答,答案取决于您的要求。你想用它做什么?因为有更多的选择:

但通常您完全避免使用Hashtable,因为Dictionary<string,object>是更好的替代品。