各位,
如果我调用 LINQ Where 扩展方法,它是利用 SortedDictionary 中的排序还是遍历每个 KVP 并进行比较?在按条件搜索场景中使用 SortedDictionary 有优势吗?
谢谢!
最佳答案
不,虽然 LINQ 方法会尝试进行一些基本的转换(即在需要长度估计时转换为 ICollection),但它们无法开始将 IEnumerable 转换为那里的每个 .net 集合以查看它们是否可以利用该集合的属性.
但是,如果您知道 SortedDictionary 源的属性,您可以使用 TakeWhile 或 SkipWhile 代替 Where 吗?
关于.net - LINQ Where 扩展方法是否针对 SortedDictionary 进行了优化?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4141529/