-3
这两个语句之间是否存在任何性能差异?性能IEnumerable <T> .ToList()。ForEach()over循环
IEnumerable<T>.ToList().ForEach(x => Console.WriteLine(x));
和
foreach (var obj in IEnumerable<T>)
Console.WriteLine(obj)
这两个语句之间是否存在任何性能差异?性能IEnumerable <T> .ToList()。ForEach()over循环
IEnumerable<T>.ToList().ForEach(x => Console.WriteLine(x));
和
foreach (var obj in IEnumerable<T>)
Console.WriteLine(obj)
在第一个例子,你会
Console.WriteLine
为每个元素。在第二个例子中,将
Console.WriteLine
每个元素。有两种表现penalities到第一在第二:
List
对象Downvoter:关心分享为什么? – AlexFoxGill
你有一个编译器并可以访问'Stopwatch'类 - 为什么不自己测试它? – Oded
是的,因为你不必创建一个列表实例foreach over IEnumerable 应该更快。 –
MarcinJuraszek
Arran,它不是重复的,因为我的对象是一个IEnumerable,我必须先创建一个列表。 –