在.All()
上操作时,.TrueForAll()
和List
之间是否存在实际差异?我知道.All()
是IEnumerable
的一部分,为什么要添加.TrueForAll()
?
答案 0 :(得分:42)
来自docs for List<T>.TrueForAll
:
支持:4,3.5,3.0,2.0
所以在 Enumerable.All
之前添加了。
对于一组其他List<T>
方法也是如此,这些方法的工作方式与它们的LINQ对应方式类似。请注意,ConvertAll
有些不同,因为它具有知道它正在List<T>
上工作并创建List<TResult>
的优势,因此它可以预先分配无论需要什么。
答案 1 :(得分:8)
TrueForAll
存在于.NET 2.0中。
请参阅:http://msdn.microsoft.com/en-us/library/kdxe4x4w(v=VS.80).aspx
答案 2 :(得分:4)
TrueForAll
似乎特定于List,而All
是LINQ的一部分。
我的猜测是前者可以追溯到.NET 2天,而后者是.NET 3.5中的新功能。
答案 3 :(得分:2)
基本上,因为这种方法在Linq之前存在。列表中的TrueForAll源自Framework 2.0。
答案 4 :(得分:1)
TrueForAll
不是扩展方法,而是在版本2的框架中。