본문 바로가기

C# 문법

[C#] Action<T> Delegate 리턴값이 없는 메서드

Action

  • Action Delegate는 리턴 값이 없는 함수에 사용되는 Delegate입니다.
  • Action<T1,T2..>로 파라미터는 필요에 따라 0~16개를 파미터를 줄 수 있습니다.
  • Action의 사용의 특징은 메서드 내부에 선언하여 메서드 안에서만 사용이 가능하다.

Action 활용법

public void Run()
{
    //기존 메서드 사용
    Action<string,int> ShowPerson = ShowPersonInfo;
    ShowPerson("춘남", 33);

    //무명메서드 사용
    Action<string, int> ShowPsersonalInfo = delegate (string str, int age)
    {
        Console.WriteLine($"{str} : {age}");
    };
    ShowPsersonalInfo("동복다방", 3);

    //람다식 사용
    Action<string, int> personalInfo = (str, age) =>
        {
            Console.WriteLine($"{str} : {age}");
        };

    personalInfo("추남", 33);

}
private void ShowPersonInfo(string str, int age)
{
    Console.WriteLine($"{str} : {age}");
}

결과

춘남 : 33
동목다방 : 3
추남 : 33