Func和Action能解决大多数的委托问题,今天还是给刚入门的小白讲一下
Action和Func两者的区别在于Action没有返回值,而Func有返回值。
以例子讲解:
没有带参数的Func
class Program
{
static int i = 0;
static void Main(string[] args)
{
SayHello();
SayHello(SayS3, SayS4);
SayHello(SayS1, s2: SayS2);
SayHello(
() => Console.WriteLine($"{i} "),
//三种方法均能实现
//() => Console.WriteLine($"{i} "),等同于函数static void SayS1() => Console.WriteLine($"{i} ");
//static void SayS1() => Console.WriteLine($"{i} ");等同于 static void SayS3() //{ // Console.WriteLine($"{i}"); //}
() => Console.Write("End")
);
Console.ReadLine();
}
static void SayS1() => Console.WriteLine($"{i} ");
static void SayS2() => Console.WriteLine($"End");
static void SayS3()
{
Console.WriteLine($"{i}");
}
static void SayS4()
{