📜  C#匿名函数

📅  最后修改于: 2020-10-31 10:31:08             🧑  作者: Mango

C#匿名函数

匿名函数是一种没有名称的函数。换句话说,我们可以说没有名称的函数称为匿名函数。

在C#中,有两种类型的匿名函数:

  • Lambda表达式
  • 匿名方法

C#Lambda表达式

Lambda表达式是一个匿名函数,可用于创建委托。我们可以使用lambda表达式创建可以作为参数传递的局部函数。编写LINQ查询也很有帮助。

C#Lambda表达式语法

(input-parameters) => expression

using System;
namespace LambdaExpressions
{
    class Program
    {
        delegate int Square(int num);
        static void Main(string[] args)
        {
            Square GetSquare = x => x * x;
            int j = GetSquare(5);  
            Console.WriteLine("Square: "+j);
        }
    }
}

输出:

Square: 25

C#匿名方法

匿名方法提供与lambda表达式相同的功能,不同之处在于它允许我们省略参数列表。让我们来看一个例子。

using System;
namespace AnonymousMethods
{
    class Program
    {
        public delegate void AnonymousFun();
        static void Main(string[] args)
        {
            AnonymousFun fun = delegate () {
                Console.WriteLine("This is anonymous function");
            };
            fun();
        }
    }
}

输出:

This is anonymous function