C#之Action的实际应用例子
public class DemoAction
{
public Action action;
public Action<int> action1;
public Action<int,string> action2;
public Action<List<int>> action3;
/// <summary>
/// 不带参数
/// </summary>
public void ActionDemo()
{
if (action != null)
{
action();
}
}
/// <summary>
/// 带一个参数
/// </summary>
/// <param name="a"></param>
public void ActionDemo(int a)
{
if (action1 != null)
{
action1(a);
}
}
/// <summary>
/// 带两个参数
/// </summary>
/// <param name="a"></param>
/// <param name="str"></param>
public void ActionDemo(int a,string str)
{
if (action2 != null)
{
action2(a,str);
}
}
/// <summary>
/// 带一个列表
/// </summary>
/// <param name="?"></param>
public void ActionDemo(List<int> list){
if (action3 != null)
{
action3(list);
}
}
}
public class CSharpDemo : MonoBehaviour {
Action action;
// Use this for initialization
void Start () {
DemoAction demo = new DemoAction();
demo.action = TestAction;
demo.action1 = TestAction;
demo.action2 = TestAction;
demo.action3 = TestAction;
List<int> list = new List<int>(){10,20,30,40};
demo.action();
demo.action1(20);
demo.action2(20, "rose_grils");
demo.action3(list);
}
// Update is called once per frame
void Update () {
}
/// <summary>
/// 不带参数
/// </summary>
void TestAction(){
Debug.LogError(" 不带参数");
}
/// <summary>
/// 带一个参数
/// </summary>
/// <param name="a"></param>
void TestAction(int a)
{
Debug.LogError("带一个参数 = " + a);
}
/// <summary>
/// 带2个参数
/// </summary>
/// <param name="a"></param>
/// <param name="str"></param>
void TestAction(int a, string str)
{
Debug.LogError("带2个参数a = " + a + " str = " + str);
}
/// <summary>
/// 带一个列表
/// </summary>
/// <param name="list"></param>
void TestAction(List<int> list)
{
Debug.LogError("带一个列表");
for (int i = 0; i < list.Count; i++)
{
Debug.LogError("i = " + list[i]);
}
}
}
运行结果如下图:

---------------------
作者:穿梭在26个字母的世界
来源:CSDN
原文:https://blog.csdn.net/rose_girls/article/details/50152823
C#之Action的实际应用例子的更多相关文章
- Struts2学习笔记 - Action篇<定义逻辑Action>
有三种方法可以使一个Action处理多个请求 动态方法调用DMI 定义逻辑Acton 在配置文件中使用通配符 这文章就谈论一下定义逻辑Action 这里主要关注的是struts.xml配置文件,一般情 ...
- [C#基础]Func和Action学习
目录 委托 Action Func 总结 委托 委托的那些事 关于委托的基本定义,在很久之前的这篇文章中,有个简单的介绍.稍微回顾一下. 委托是c#中类型安全的,可以订阅一个或多个具有相同签名方法的函 ...
- React学习(2)——action,reducer
action creator 是一个函数,格式如下: var actionCreator = function() { // 构建一个 action 并返回它 return { type: 'AN_A ...
- Salesforce Consumer Goods Cloud 浅谈篇三之 行动计划(Action Plan)相关配置
本篇参考: https://v.qq.com/x/page/f0772toebhd.html https://v.qq.com/x/page/e0772tsmtek.html https://v.qq ...
- Oozie分布式任务的工作流——邮件篇
在大数据的当下,各种spark和hadoop的框架层出不穷.各种高端的计算框架,分布式任务如乱花般迷眼.你是否有这种困惑!--有了许多的分布式任务,但是每天需要固定时间跑任务,自己写个调度,既不稳定, ...
- 【基础】MVC路由规则
一.RouteData解析过程 在ASP.NET MVC中,服务器收到来自客户端的请求后,会经过一些列的处理拿到请求的数据,比如在Pipeline 管线事件中,通过订阅适当的事件,将HttpConte ...
- ASP.NET MVC 5 - 控制器
MVC代表: 模型-视图-控制器 .MVC是一个架构良好并且易于测试和易于维护的开发模式.基于MVC模式的应用程序包含: · Models: 表示该应用程序的数据并使用验证逻辑来强制实施业务规则的数据 ...
- Circuit Breaker Pattern(断路器模式)
Handle faults that may take a variable amount of time to rectify when connecting to a remote service ...
- Struts2 - Conversion Plugin
转载:http://www.cnblogs.com/ikuman/archive/2013/11/04/3403073.html 1.struts2自2.1以后推荐使用Convention Plugi ...
随机推荐
- falsk 与 django 钩子方法
falsk 四大钩子方法# 在第一次请求之前调用@app.before_first_requestdef before_first_request(): print("这是第一次请求之前调用 ...
- USB驱动框架
以USB鼠标驱动为例 框架入口源文件: usb_mouse.c hub.c (可根据入口源文件,再按着框架到内核走一遍) 内核版本:linux_2.6.22.6 硬件平台:JZ2440 以下是 ...
- 页面调用qq
tencent://message/?uin=516999605&Site=&Menu=yes
- 【JMeter】前置处理器
BeanShell PreProcessor 使用BeanShell在请求进行之前进行操作.语法使用与BeanShell Sampler是一样的.但可使用的内置变量稍有不同 JDBC Pre ...
- 弱网测试之基于fiddler+wanem完成
如果不想搜集安装包,可以使用我分享的按照包,如下: WANem_3.0_Beta百度网盘下载链接:https://pan.baidu.com/s/1aMf5WBsfH7Mrl8iB2NjEYg 密码: ...
- vue项目引用 iView 组件——全局安装与按需加载
框架的热度,出现了不少基于Vue的UI组件库,这次项目用到了 iView 这个组件库.使用方法官网很详细. 官网:https://www.iviewui.com/ 这篇文章主要是记录一下npm 全局安 ...
- 【叶问】 MySQL常用的sql调优手段或工具有哪些
MySQL常用的sql调优手段或工具有哪些1.根据执行计划优化 通常使用desc或explain,另外可以添加format=json来输出更详细的json格式的执行计划,主要注意点如下: ...
- Magento2与Magento1的区别有哪些
magento2是15年正式上线的正式版,框架和写法跟magento1有很大区别,用到了命名空间和composer,模块化设计更强.因为是刚出生不久 所以bug比较多.目前全世界做magento2的公 ...
- mysql show prifile基本详解
show profile默认情况下,参数处于关闭状态,并保存最近15次的运行结果查看profile是否开启 show variables like '%profi%';开启profile记录功能 se ...
- 误删除innodb ibdata数据文件 文件句柄 文件描述符 proc fd
误删除innodb ibdata数据文件 文件句柄 文件描述符 proc fd http://www.cnblogs.com/gomysql/p/3702216.html 提示:如果不小心通过 ...