C#基础—— Func 委托

本文深入探讨了C#中的Func委托,一种在.NET Framework 3.5中引入的重要概念。Func委托允许开发者定义和使用具有指定参数和返回类型的通用委托,简化了匿名方法和Lambda表达式的使用。文章通过实例演示了Func委托的创建、使用及其灵活性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

C#基础—— Func 委托
1.什么是Func委托
Func是一种委托,这是在3.5里面新增的,2.0里面我们使用委托是用Delegate,Func位于System.Core命名空间下,
Func<int,string> ,它其实就是一个C#内部已经定义好的委托类型,尖括号里是int是委托的参数类型,string是返回值类型,Func可以有很多个参数,无论有几个,最后一个固定是返回值,前几个都是参数。
Func
Func<in T,out TResult>
Func<in T1,in T2,…,in T16, out TResult>
2.Func委托的特点
必须有一个返回值
Func泛型委托,尖括号中,最后一个参数为返回类型。
Func泛型委托,如果尖括号中只有一个参数,则表示返回类型。

3.使用Func委托
// 定义Func委托,没有参数,返回值是string
static string GetName()
{
string str = “张三”;
return str;
}
在Main方法中执行:
static void Main(string[] args)
{
// 定义一个Func 委托, 指向一个返回string类型的 方法
Func< string > name= GetName;
Console.WriteLine(name());
Console.ReadLine();
}
执行结果:
在这里插入图片描述

// 定义一个Func 委托,一个int类型参数 , 返回值是int
static int getIndex(int x)
{
return x;
}
在Main方法中执行:
static void Main(string[] args)
{
// 定义一个Func 委托, 指向一个返回int类型的 方法
Func<int, int> index = getIndex;
Console.WriteLine(index(5));
Console.ReadLine();
}
执行结果:
在这里插入图片描述

// 定义一个Func 委托,有两个int类型参数 ,返回值是int
static int calcMul(int x,int y)
{
int a = x*y;

return a;
}
在Main方法中执行:
static void Main(string[] args)
{
// 定义一个Func 委托,指向一个返回int类型的 方法
Func<int, int, int> calc = calcMul;
Console.WriteLine(calc(15,2));
Console.ReadLine();
}
执行结果:

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值