我经常在C#2.0中使用带有字符串作为第一个键的Dictionary,该键包含唯一标识符。
我正在学习C#3.0+,看起来现在我可以简单地使用List并在该对象上执行LINQ以获取特定对象(使用.where()方法)。
因此,如果我理解正确,Dictionary类已经失去了它的作用?
我经常在C#2.0中使用带有字符串作为第一个键的Dictionary,该键包含唯一标识符。
我正在学习C#3.0+,看起来现在我可以简单地使用List并在该对象上执行LINQ以获取特定对象(使用.where()方法)。
因此,如果我理解正确,Dictionary类已经失去了它的作用?
不,对于给定键来说,使用字典仍然更高效。
使用列表仍需遍历整个列表才能找到所需内容。而字典可以直接进行查找。
在我看来,与LINQ相比,使用字典方法会更快,因此如果你有一个包含大量项目的数组,你应该使用字典方法。
http://msdn.microsoft.com/en-us/library/xfhwa508.aspx
and List