sen*_*ale 13 c# linq icomparer
我想知道什么是更好用.
用于排序的IComparer类和Compare方法或列表上的LINQ orderby.两者都工作正常但哪一个更适合大型列表.
Dav*_*kle 10
我会选择LINQ有两个原因.
如果你认为OrderBy子句中的lambda表达式编译成一个函数,我希望单线程实现的性能大致相似 - 这几乎是你通过实现IComparer得到的.
话虽如此,您可以通过更改排序算法来获得更多性能提升,以便根据数据的排序方式进行定制,而不是通过更改比较方法.但是我愿意今天早上打赌我的咖啡,你的Linq语句中的OrderBy使用了Quicksort的实现,所以在一般情况下它可能已经相当不错了.