天天看點

系統自帶委托應用 Action Func

//系統自帶委托分2種
            //1、Action 帶參數 無傳回值委托
            //2、Func 帶參數 有傳回值委托

            //Action 無參數
            Action action1 = () => Console.WriteLine("這裡是Action無參數委托方法");
            action1.Invoke();
            //Action 有參數  參數最多16個 因為系統給寫好的最多16個 如果需要更多,則自己寫即可
            Action<string,int,int> action = (name,id,age) => Console.WriteLine("{0}号選手{1}年齡{2}",id,name,age);
            action.Invoke("張三豐",1,15);

            //Func 有傳回值 無參數  傳回1
            Func<int> func1 = () => 1;
            Console.WriteLine(func1.Invoke());

            //Func 有傳回值 有參數
            //泛型類型順序 先參數 最後傳回值類型
            Func<int, int, int, string> func2 = (int_1, int_2, int_3) => (int_1 + int_2 + int_3).ToString();
            Console.WriteLine(func2.Invoke(5,6,8));
            

            //注:類型可包括自己建立的類 比如長談的People