相关疑难解决方法(0)

为什么LINQ在这个例子中更快

我写了以下内容来测试使用foreachvs 的性能LINQ:

private class Widget
{
    public string Name { get; set; }
}

static void Main(string[] args)
{
    List<Widget> widgets = new List<Widget>();
    int found = 0;

    for (int i = 0; i <= 500000 - 1; i++)
        widgets.Add(new Widget() { Name = Guid.NewGuid().ToString() });

    DateTime starttime = DateTime.Now;

    foreach (Widget w in widgets)
    {
        if (w.Name.StartsWith("4"))
            found += 1;
    }

    Console.WriteLine(found + " - " + DateTime.Now.Subtract(starttime).Milliseconds + " ms");

    starttime = DateTime.Now;
    found …
Run Code Online (Sandbox Code Playgroud)

c# linq performance foreach

15
推荐指数
1
解决办法
724
查看次数

标签 统计

c# ×1

foreach ×1

linq ×1

performance ×1