为什么不是Dictionary <tkey,tvalue =“”> .KeyCollection类有自己的Contains方法?</tkey,>

时间:2011-08-27 00:28:54

标签: c# linq

Dictionary<TKey, TValue>.KeyCollection Class通过contains实现IEnumerable直通扩展方法,即O(n)

为什么它没有O(1)的原生的?它的HashSet不是吗?

1 个答案:

答案 0 :(得分:6)

它确实实现了自己的Contains。您无法通过扩展方法实现接口。请注意,它明确地实现了它,这意味着您首先必须将其强制转换为ICollection才能使用它。