static void LambdaTest() { //lambda正常状态. //LambdaDelegate lambda = delegate (int num) //{ // return num * num; //}; //关键字delegate可以省略 //在参数裂变与匿名方法主体之间, 放Lambda运算符 "=>" //Lambda表达式可省略参数类型 //以上可以改写为 //LambdaDelegate lambda = (num) => //{ // return num * num; //}; //如果只有一个隐式类型参数, 可省略圆括号 LambdaDelegate lambda = num => num * num; //如果匿名方法没有参数, 必须使用空的圆括号 NumDelegate numDelegate = () => 1000; //记得调用的是需要添加()括号. Console.WriteLine("调用没有参数的委托: " + numDelegate()); Console.WriteLine(lambda(20)); }
//返回值为int无参数委托测试; static void NumDelegateTest() { //创建委托对象 NumDelegate numDelegate = NumTest.NumTest1; numDelegate += NumTest.NumTest2; numDelegate(); }