匿名函数是一种没有名称的函数。换句话说,我们可以说没有名称的函数称为匿名函数。
在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();
}
}
}
【C#匿名函数】输出:
This is anonymous function
推荐阅读
- C#线程生命周期
- C#反射
- C#的代理delegate
- C#集合SortedList
- C#集合SortedDictionary
- C#字典Dictionary
- C#集合LinkedList
- C#队列Queue
- C#栈Stack