使用匿名方法

时间:2011-05-18 09:24:38

标签: c# .net anonymous-methods

我没有使用过匿名方法。我找到了一个代码,其中列表正在迭代,如代码片段1所示。为什么代码片段1优先于2?

    List<String> names = new List<String>(); 

    ... 
    //Code snippet 1
    names.ForEach(delegate(String name)
    {
        Console.WriteLine(name);
    });

    //Code snippet 2
    foreach (string name in names)
    {
        Console.WriteLine(name);
    }

2 个答案:

答案 0 :(得分:7)

我没有看到片段1使用得太多。我确实看到了使用lambda表达式的变体。

names.ForEach(x=> Console.WriteLine(x));

答案 1 :(得分:0)

在这种情况下,没有任何好处。

您会发现在您的示例中使用方法2的较旧程序员,而较新的程序员可能会使用方法1.

较早的程序员在匿名方法之前有更多的经验,匿名方法是新的,而不是“在他们的灵魂中根深蒂固”,他们自动编程风格#2。

新程序员可能会使用#1,因为他们一直认为一切都是方法调用。