Action只能委托必须是无返回值的方法

Fun只是委托必须有返回值的方法

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

Delegate的代码:

public delegate void myDelegate(string str);
public static void HellowChinese(string strChinese)
{
Console.WriteLine("Good morning," + strChinese);
Console.ReadLine();
}

myDelegate d = new myDelegate(HellowChinese);
d("Mr wang");

用了Action之后呢:

public static void HellowChinese(string strChinese)
{
Console.WriteLine("Good morning," + 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();

---------------------  
原文:https://blog.csdn.net/jcx5083761/article/details/8552627

转载于:https://www.cnblogs.com/lijianhong90/p/10418549.html

C#中的Action和Func 区别相关推荐

  1. 使用.NET中的Action及Func泛型委托

    原文 http://www.cnblogs.com/skm-blog/archive/2013/05/24/3096294.html 委托,在C#编程中占有极其重要的地位,委托可以将函数封装到委托对象 ...

  2. Action和Func区别

    Action<>和Func<>其实都是委托的[代理]简写形式. 简单的委托写法: 1 //普通的委托 2 public delegate void myDelegate(str ...

  3. C#中的Action和Func委托

    Action和Func在.NetFramework3.0之后出现的 1. Action 1.1. 特性介绍: Acition 属于无参无返回值的函数类型 Action通过设置泛型,我们可以定义有多个参 ...

  4. 在.net2.0中实现Action和Func方法

    由于这两个是在.net3.5中新加入的特性,所以我们需要自己写一下. 格式如下: delegate void Action();         delegate void Action<T, ...

  5. 如何使用 C# 中的 Action, Func,Predicate

    译文链接:https://www.infoworld.com/article/3057152/how-to-work-with-action-func-and-predicate-delegates- ...

  6. vuex中mutation和action的详细区别

    一.vuex中mutation和action的详细区别 const store = new Vuex.Store({state: {count: 0},mutations: {increment (s ...

  7. C# action,delegate,func的用法和区别

    以前我都是通过定义一个delegate来写委托的,但是最近看一些外国人写的源码都是用action和func方式来写,当时感觉对这很陌生所以看起源码也觉得陌生,所以我就花费时间来学习下这两种方式,然后发 ...

  8. spark的RDD中的action(执行)和transformation(转换)两种操作中常见函数介绍

    参考文章:spark的RDD中的action(执行)和transformation(转换)两种操作中常见函数介绍 spark常见的RDD 1. 函数概览 2. 常见的Transformations 操 ...

  9. c语言中引用头使用什么指令,在源文件(.c)和头文件(.h)中声明和定义的区别——C语言...

    最近在看多文件编程的时候遇到的一个问题,本来以为理解了声明和定义的区别(然而并没有····),也算是重新认识了一次声明和定义,下面上代码 声明和定义:有分配空间的叫定义,没分配空间的叫声明 定义:表示 ...

最新文章

  1. 秘钥加密码的登录模式
  2. Java中的图像锐化操作
  3. Effective Objective-C [下]
  4. CGI方式获取RTX中用户的电话和邮箱
  5. VTK:Disk用法实战
  6. POJ1236 Network of Schools
  7. python中if __name__ == ‘__main__‘:的简单理解
  8. easyui结合java,Spring+SpringMVC+MyBatis+easyUI整合基础篇(二)牛刀小试
  9. 【报告分享】中国“新基建”发展研究报告.pdf(附下载链接)
  10. 用GAN炼制长生不老药,这么玄幻的公司竟然能拿到药企投资
  11. 光通量发光强度照度亮度关系_照度、强光、光通量之间是什么关系
  12. openwrt 添加luci选项
  13. 16.定位模板,布局和样式
  14. 26--学生签到 管理员页面功能(5) foreach
  15. 2008年最新姓氏排名
  16. Javascript小程序 向浏览者问好(转)
  17. 离散数学 2.3 Functions
  18. Arduino - 改造楼道门禁,使用密码开门
  19. python制作时间,如何利用python制作时间戳转换工具详解
  20. 小程序可通过这三种方式去做竞品分析

热门文章

  1. sql语句创建外键关联
  2. 最大人工岛[如何让一个连通分量的所有节点都记录总节点数?+给连通分量编号]
  3. 如何等概率地从n个数中随机抽出m个数?
  4. 统计学考研笔记:回归方程计算题
  5. RK3399 Android7.1进入烧录模式的几种方法
  6. MySQL 8.0 - Client does not support authentication protocol requested by server....
  7. 安装程序重新启动你的计算机后继续,急急急 一键重装系统卡在了安装程序将在重新启动您的计算机后继续...
  8. 金蝶KIS标准版与金蝶K3的差别
  9. 将SQL2000数据库升级到SQL2005
  10. 花旗银行的ATM机的易用点