Func委托(通用委托)
具备返回值的委托,系统提供了Func委托来完成此功能。
规则:
1:Func委托必须有一个返回数值
2:如果需要给Func委托添加参数,则轨道在尖括号内的最后一个为返回类型,前面的均是参数
源代码:
/***
*学习Func委托
*
* 规则:
* 1.必须有一个返回数值
* 2.Func泛型委托,尖括号中最后一个为返回类型
* 3.Func泛型委托,如果尖括号中只有一个参数,则表示返回类型
*
*
*/
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace chapter22学习Func委托
{
class Program
{
Func<string> funHandler; //无参
Func<string, int> funHandlerWithPara; //有一个参数
public Program()
{
funHandler += InvokeMethod;
funHandlerWithPara += InvokeMethod1;
}
public string InvokeMethod()
{
Console.WriteLine("无参方法,有string类型返回数值");
return "你好";
}
public int InvokeMethod1(string str)
{
Console.WriteLine("有参方法,返回类型是int类型: " + str);
return 0;
}
public void DisplayInfo()
{
//调用无参的委托
funHandler.Invoke();
//调用有一个参数的委托
funHandlerWithPara.Invoke("任向飞");
}
static void Main(string[] args)
{
Program obj = new Program();
obj.DisplayInfo();
}
}
}