我只是构建了一个小方法来解析另一个列表中的一个列表,我想知道foreach循环是否可以更快地处理数据,或者linq是否具有更好的性能,因为我对此的经验为零。
public static List<U> parse<T, U>(List<T> lines, Func<T, U> function)
where T : class
where U : class
{
//this would be the equal linq statement im wondering about:
//return (from line in lines select function.Invoke(line)).ToList();
var result = new List<U>();
foreach (var line in lines)
{
var obj = function.Invoke(line);
if (obj != null)
{
result.Add(obj);
}
}
return result;
}