Action:封装一个方法,该方法不具有参数并且不返回值
public delegate void Action()
Action<T>:Action的泛型实现了1到16个传入参数的定义,但是仍然没有返回值,得出结论Action不支持返回值,如果需要返回值请使用另一个系统委托Func
public delegate void Action<in T>(T obj)...public delegate void Action<in T1, in T2, in T3, in T4, in T5, in T6, in T7, in T8, in T9, in T10, in T11, in T12, in T13, in T14, in T15, in T16>(T1 arg1,T2 arg2,T3 arg3,T4 arg4,T5 arg5,T6 arg6,T7 arg7,T8 arg8,T9 arg9,T10 arg10,T11 arg11,T12 arg12,T13 arg13,T14 arg14,T15 arg15,T16 arg16)
由此可见Action的定义非常简单,但是这样的委托实在是太常用了,如果用一次自己定义一个也是可以的,多的话就感觉重复劳动太多:
过去自定义委托:
using System;using System.Windows.Forms;public delegate void ShowValue();public class Name{ PRivate string instanceName; public Name(string name) { this.instanceName = name; } public void DisplayToConsole() { Console.WriteLine(this.instanceName); } public void DisplayToWindow() { MessageBox.Show(this.instanceName); }}public class testTestDelegate{ public static void Main() { Name testName = new Name("Koani"); ShowValue showMethod = testName.DisplayToWindow; showMethod(); }}View Code
现在直接使用Action:
using System;using System.Windows.Forms;public class Name{ private string instanceName; public Name(string name) { this.instanceName = name; } public void DisplayToConsole() { Console.WriteLine(this.instanceName); } public void DisplayToWindow() { MessageBox.Show(this.instanceName); }}public class testTestDelegate{ public static void Main() { Name testName = new Name("Koani"); Action showMethod = testName.DisplayToWindow; //将 Action 委托与匿名方法一起使用 // Action showMethod = delegate() { testName.DisplayToWindow();} ; //将 lambda 表达式分配给 Action 委托实例 //Action showMethod = () => testName.DisplayToWindow(); showMethod(); }}View Code
Action<T>的使用也是类似的,但是Action<T>的定义是比较特别的,它有一个关键词In,In是用来干嘛的呢,按照MSDN的解释:
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
新闻热点
疑难解答