Func는 결과를 반환하는 메소드를 참조하기 위해 만들어진 대리자입니다.
class Program
{
static void Main(string[] args)
{
Func<int> func1 = () => 10;
Console.WriteLine($"func1() : {func1()}" );
Func<int, int> func2 = (x) => x * 2;
Console.WriteLine($"func2() : {func2(5)}");
Func<double, double, double> func3 =
(x, y) => x / y;
Console.WriteLine($"func3() : {func3(22, 7)}");
}
}
Action은 결과를 반환하지 않는 메소드를 참조하기 위해 만들어진 대리자입니다.
class Program
{
static void Main(string[] args)
{
Action act1 = () => Console.WriteLine("Action()");
act1();
int result = 0;
Action<int> act2 = (x) => result = x * x;
act2(5);
Console.WriteLine($"result : {result}");
Action<double, double> act3 = (x, y) =>
{
double pi = x / y;
Console.WriteLine($"Action<T1,T2>({x},{y}) : {pi}");
};
act3(22.0, 7.0);
}
}