[C#学习笔记]Func委托与Action委托

学习一项新知识的时候,最好的方法就是去实践它。

 

前言

 《CLR via C#》这本神书真的是太有意思了!好的我的前言就是这个。

Fun

如果要用有输入参数,有返回值的委托,那么Func委托将满足你的要求。

Func泛型委托引用了一个带有一个返回值的方法,它可以传递0或者多到16个参数类型,和一个返回类型。

它可以没有传递参数,但是一定要有返回类型。

Func<out TResult>
Func<in T,out TResult>
Func<in T1,in T2,...,in T16, out TResult> 

in:输入参数

out:输出参数,也就是返回值。

看下面的代码:

输出结果是:

利用Func委托和Lambda表达式替换了字符串

Action

 Action委托有两种方式:无参数无返回值的委托,有至少一个最多16个的参数无返回值的泛型委托。

Action泛型委托根据输入参数个数的不同,Action委托有十六个重载。

总结

Action:无参数无返回值委托。

Action<T>:泛型委托,无返回值,根据输入参数的个数不同有十六个重载。

Func< out T>:无输入参数,有返回值。

Func<in T,out T>:有输入参数,有返回值,根据输入参数个数不同,有十六个重载。

Action和Func中可以使用Lambda和匿名方法处理方法体内逻辑。

转载于:https://www.cnblogs.com/knqiufan/p/10480415.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值