c#委托中的匿名方法和lambda表達式
阿新 • • 發佈:2019-03-03
add delegate st3 void class 合並 代碼量 span pre
一、一般委托方式
Func<int, int, int> AddMethodHander; public unName() { AddMethodHander += AddMethod; } public int AddMethod(int num1, int num2) { int result = num1 + num2; Console.WriteLine(result);return result; } public void Test1() { AddMethodHander.Invoke(20, 30); }
步驟:先實例化委托,註冊方法的委托,調用委托。
二、使用匿名方法
public void Test2() { Func<int, int, int> FunMeHandle = delegate(int num1, int num2) {return num1 + num2; }; int result = FunMeHandle.Invoke(21, 31); Console.WriteLine(result); }
將實例化委托和委托方法進行了合並,最後調用委托。
三、使用lambda表達式
public void Test3() { Func<int, int, int> FunMeHan = ( num1, num2) =>num1 + num2;int result = FunMeHan.Invoke(10, 52); Console.WriteLine(result); }
從委托-------匿名方法----------Lambda表達式,不斷的簡化程序的代碼量。
c#委托中的匿名方法和lambda表達式