C#中的Action<>和Func<>的那些事

用过C#的委托的同学都是这Action<> 和 Func<>都是委托【代理】的简写形式!!!

我们先看看定义委托和使用委托的代码:

public delegate void delegate1(string str);

public static void HellowChinese(string strChinese)

{

         Console.WriteLine("早上好," + strChinese);

         Console.ReadLine();

}

delegate1 d = new delegate1(HellowChinese);

d("Mr wang");

接下来看看Action<> 和 Func<> 的写法

一、【action<>】指定那些只有输入参数,没有返回值的委托

public static void HellowChinese(string strChinese)  {      

        Console.WriteLine("早上好," + strChinese);      

        Console.ReadLine(); 

}    

Action<string>   action = HellowChinese;

action("Spring.");

(注意:就是相当于省去了定义委托的步骤了。)


二、func<> 这个和上面的那个是一样的,区别是需要有返回值的方法!

public static string HelloEnglish(string strEnglish)  {      

        return "Hello." + strEnglish;  

}    

Func<string,string>   f = HelloEnglish;

Console.WriteLine(f("Srping ji"));

Console.ReadLine();

(注意:Func<> 里面参数,最后一个参数表示方法的返回类型)

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,092评论 19 139
  • 1. [C#语言基础]请简述拆箱和装箱。 答: 装箱操作: 值类型隐式转换为object类型或由此值类型实现的任何...
    胤醚貔貅阅读 10,330评论 1 29
  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 33,216评论 18 399
  • 目录本次给大家介绍的是我收集以及自己个人保存一些.NET面试题第二篇简介1.接口2.您在什么情况下会用到虚方法或抽...
    寒剑飘零阅读 5,987评论 0 10
  • 父亲已经离开我一年半了,每每想起仍然哽咽的不能说话,只有豆大的眼泪往下掉,以前我从来不觉得我是一个会流眼泪的人,直...
    豆豆熊阅读 3,635评论 5 3

友情链接更多精彩内容