日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > C# >内容正文

C#

C# Action用法

發布時間:2023/12/4 C# 75 豆豆
生活随笔 收集整理的這篇文章主要介紹了 C# Action用法 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Action是無返回值的泛型委托

可以使用 Action<T1, T2, T3, T4> 委托以參數形式傳遞方法,而不用顯式聲明自定義的委托。封裝的方法必須與此委托定義的方法簽名相對應。也就是說,封裝的方法必須具有四個均通過值傳遞給它的參數,并且不能返回值。(在 C# 中,該方法必須返回 void)通常,這種方法用于執行某個操作。

1、Action 表示無參,無返回值的委托

2、 Action<int,string> 表示有傳入參數int,string無返回值的委托

3、Action<int,string,bool> 表示有傳入參數int,string,bool無返回值的委托

4、 Action<int,int,int,int> 表示有傳入4個int型參數,無返回值的委托

5、 Action至少0個參數,至多16個參數,無返回值。

class?Program{static?void?Main(string[]?args){//循環調用,action不傳參List<Action>?actions?=?new?List<Action>();for?(int?i?=?0;?i?<?10;?i++){//因為是按地址傳遞參數,所以要聲明變量,不如結果都是10int?k?=?i;actions.Add(()?=>?Console.WriteLine(k));}foreach?(Action?a?in?actions){a();}//傳遞兩個參數Action<string,?int>?action?=?new?Action<string,?int>(ShowAction);Show("張三",29,action);//傳遞一個參數Show("張三",o=>Console.WriteLine(o));//不傳遞參數調用Show(()=>Console.WriteLine("張三"));}public?static?void?ShowAction(string?name,?int?age){Console.WriteLine(name?+?"的年齡:"?+?age);}public?static?void?Show(string?name,?int?age,?Action<string,?int>?action){action(name,?age);}public?static?void?Show(string?name,?Action<string>?action){action(name);}public?static?void?Show(Action?action){action();}}

輸出結果:

0 1 2 3 4 5 6 7 8 9 張三的年齡:29 張三 張三

總結

以上是生活随笔為你收集整理的C# Action用法的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。