类似函数bool decide(bool x)可以作为参数传递给方法作为仿函数:
foo(Func<bool,bool> lambda)
Run Code Online (Sandbox Code Playgroud)
我们可以使lambda表达式()=>{int x=8; x=x+2;}不需要任何东西并返回任何内容.让我说我想将这样的函数作为参数传递给另一种方法bar然后怎么做呢?
这Action不是Func.如果您不想返回值,那么您必须使用Action.
例如:
Action<int> example1 = (int x) => Console.WriteLine("Write {0}", x);
example1.Invoke(1); // or example1(1);
Action example3 = () => Console.WriteLine("Done");
example3.Invoke(); // or example3();
Run Code Online (Sandbox Code Playgroud)