码迷,mamicode.com
首页 > 其他好文 > 详细

委托与事件(三)

时间:2016-11-17 12:57:53      阅读:174      评论:0      收藏:0      [点我收藏+]

标签:lambda表达式   匿名方法   strong   委托与事件   span   bsp   lambda   测试   new   

除了使用delegate关键字定义委托,还可以使用系统关键字Action、Func和Predicate直接使用委托

 

Action(无返回值):

(1)使用匿名方法调用委托:

1     /****************使用匿名方法**************/
2     Action<string> action = delegate(string str)
3     {
4         Console.WriteLine(str);
5     };
6     action("Parameters");

(2)使用Lambda表达式调用委托:

1     /****************使用Lambda表达式**************/
2     Action<string> action = (string str) =>
3     {
4         Console.WriteLine(str);
5     };
6     action("Parameters");

(3)调用无参方法:

  • 方法体:
1     private static void ShowMsg()
2     {
3         Console.WriteLine("Action无参无返回!");
4     }
  • 通过Action调用方法:
1     Action action = ShowMsg;
2     action();

(4)调用带参数的方法:

  • 方法体:
1     private static void ShowMsg(string msg)
2     {
3         Console.WriteLine("Action单参无返回!参数为:{0}", msg);
4     }
  • 通过Action调用方法:
1     /****************使用带参数方法**************/
2     Action<string> action = new Action<string>(ShowMsg);
3     action("测试");

 

委托与事件(三)

标签:lambda表达式   匿名方法   strong   委托与事件   span   bsp   lambda   测试   new   

原文地址:http://www.cnblogs.com/imstrive/p/6073211.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!