泛型委托实际上就是.NET Framework预定义的委托,基本涵盖了所有常用的委托,所以一般不用用户重新声明。简洁方便

【1】无返回值的泛型委托

Action系列泛型委托,是没有返回参数的委托,调用的时候和普通的委托没有声明两样。

示例:

Action test1 = () => { Console.WriteLine("void method();"); };
Action<int, double> test2 = (int x, double y) => { Console.WriteLine("void method(t1, t2)"); };

test1();
test2(2, 3);

【2】有返回值的泛型委托

Func系列泛型委托,是有返回值的委托,最后一个参数表示返回参数。

示例:

Func<int> test3 = () => { return (10); };
Func<double, int> test4 = (double x) => { return (int)(x * 2); };

Console.WriteLine(test3());
Console.WriteLine(test4(1.2));