C# =符號的使用

前言:

-. 讀作 goes to,是C#3.0的新內容;

-.?字段定義時設置{ get; set; }屬性的作用:

主要是為了外部訪問的安全性封裝字段,get set你自己可以設置限制條件,尤其是wpf綁定時,沒有get set屬性,界面是更新不了的。寫上get,set這種訪問器的叫屬性,不寫的叫字段,屬性是proprerty,字段叫field

01

用法場景一:定義只讀屬性

看到這樣一段代碼:

public class Man : IPerson{public string Sex => "男";public string Name { get; set; }
}public class Woman : IPerson
{public string Sex => "女";public string Name { get; set; }
}

大家可能會有疑問?為什么用=>

public string Sex => "男";

而不是這樣去賦值

public?string?Sex?{ get; set; } =?"男";

其實在這里=>的用法相當于?{ get; } = 即:將Sex字段設置為了只讀屬性,同時進行了賦值。

我們可以在控制臺中進行驗證:

5ca5d6f49930d58dfb4ef735625a93f4.png

去掉>?則錯誤提示就會消失。

02


用法場景二:Lambda表達式,匿名委托

Lambda表達式。
Lambda表達式是C#3.0的新內容,如果您之前學習的C#2.0,不認識也就不奇怪了。
給您舉個例子。
例如,我定義一個委托:
delegate int Method(int a, int b);
再定義一個方法:
int Add(int a, int b)
{
return a + b;
}
我可能需要這樣通過委托調用方法:
Method m += Add;
Console.WriteLine(m(2, 3));
====================================================
但如果用 Lambda 表達式:
Method m += (a ,b) => a + b;
Console.WriteLine(m(2, 3));
可以省去方法的定義。
實際上, Lambda 表達式只是簡化了匿名方法的語法而已。

附 C# 2.0 的匿名方法語法:
Method m += delegate(int a, int b) { return a + b; };
Console.WriteLine(m(2, 3));

*******************************************************************************

C#中 += (s, e) => 這些字符什么意思

public MainWindow()
{
InitializeComponent();
this.Loaded += (s, e) => DiscoverKinectSensor();
this.Unloaded += (s, e) => this.kinect = null;
}

在上面的代碼中,+=是在委托鏈上增加一個委托,(s,e) =>是一個lambda表達式,這個表達式創建一個委托,委托處理的主體就是=> 后面的部分。

其實這個寫法相當于
this.Loaded += new EventHandler(Form_Loaded);

private void Form_Loaded(object sender,?? EventArgs e) {
??? DiscoverKinectSensor();
}

技術群:添加小編微信并備注進群

小編微信:mm1552923 ??

公眾號:dotNet編程大全? ??

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/286941.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/286941.shtml
英文地址,請注明出處:http://en.pswp.cn/news/286941.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

【無人機組裝與調試】第二章 關于新西達30A電調說明書的問題

【無人機組裝與調試】系列課程全集: 第一章 概述 第二章 關于新西達30A電調說明書的問題 第三章 舵機安裝與調整 第四章 F450四軸裝機實例-選擇機型、需要的器材工具材料 第五章 無人機遙控器 第六章 電調、電池、電機 極限使用:   持續電流30A,瞬間35A ,40A持續10秒。 外…

所有方向你要的資料干貨這都有,從入門到實戰!【CSDN寶藏資料圖鑒第一期】

前言 CSDN 是全球知名的開發者社區,創建于1999年,經過20來年的知識文檔積累已然成為中文開發者的知識寶庫;從基礎的法入門到蛻變實戰案例、從神秘前沿技術到清晰的實踐步驟,可以說CSDN是你找尋資料的最佳寶庫,只要你想…

Spark官方調優文檔翻譯(轉載)

Spark調優 由于大部分Spark計算都是在內存中完成的,所以Spark程序的瓶頸可能由集群中任意一種資源導致,如:CPU、網絡帶寬、或者內存等。最常見的情況是,數據能裝進內存,而瓶頸是網絡帶寬;當然,有…

《DOS命令全集(中英文對照)》CHM版.CHM

http://pan.baidu.com/s/1pLrhAzx轉載于:https://www.cnblogs.com/micro-chen/p/5692802.html

判斷一個字符串是否為另外一個字符串旋轉之后的字符串。

★判斷一個字符串是否為另外一個字符串旋轉之后的字符串。例如:給定s1 = AABCD和s2 BCDAA,返回1,給定s1abcd和s2ACBD,返回0.AABCD左旋一個字符得到ABCDA AABCD右旋一個字符得到DAABC AABCD左旋兩…

Flutter之Padding

1 、Padding介紹 Padding用來為子元素添加填充,也就是指定子元素與容器邊界的距離,作用基本上與Android中ViewGroup的padding屬性差不多 const Padding({Key key,required this.padding,Widget child,}) : assert(padding ! null),super(key: key, chil…

【無人機組裝與調試】第三章 舵機安裝與調整

【無人機組裝與調試】系列課程全集: 第一章 概述 第二章 關于新西達30A電調說明書的問題 第三章 舵機安裝與調整 第四章 F450四軸裝機實例-選擇機型、需要的器材工具材料 第五章 無人機遙控器 第六章 電調、電池、電機 舵機就是一種有輸出軸的小傳動裝置。這個輸出軸能夠通過向…

其實python面向對象3分鐘就可以入門(14)

本系列文章將會以通俗易懂的對話方式進行教學,對話中將涵蓋了新手在學習中的一般問題。此系列將會持續更新,包括別的語言以及實戰都將使用對話的方式進行教學,基礎編程語言教學適用于零基礎小白,之后實戰課程也將會逐步更新。 若…

定制ASP.NET 6.0的應用配置

大家好,我是張飛洪,感謝您的閱讀,我會不定期和你分享學習心得,希望我的文章能成為你成長路上的墊腳石,讓我們一起精進。本文的主題是應用程序配置。要介紹的是如何使用配置、如何自定義配置,以采用不同的方…

mysql optimization

EXPLAIN 命令詳解 http://www.cnblogs.com/gomysql/p/3720123.html http://www.cnblogs.com/Aiapple/p/5697229.html http://www.cnblogs.com/xuanzhi201111/p/4175635.html https://dev.mysql.com/doc/refman/5.7/en/optimization.html Mysql 執行計劃(Explain&…

云服務器cpu性能,云服務器cpu性能

云服務器cpu性能 內容精選換一換CPU積分是一種用來衡量云服務器計算、存儲以及網絡配置利用率的方式。云服務器利用CPU積分機制保證云服務器基準性能,解決超分云服務器長期占用CPU資源的問題。使用CPU積分機制的彈性云服務器適用于平時CPU負載不高、但突發時可接受因…

Flutter之Decoration

1、不廢話,先爆照看效果 2、Decoration介紹 Flutter的Decoration可以設置:背景色 背景圖 邊框 圓角 陰影 漸變色 的等屬性,有點像android里面的shape,Decoration 是基類,它的子類有下面這些 BoxDecoration:實現邊框、…

DRBD 部署

主備模式DRBD1:eth0:10.0.0.3eth1:172.16.1.3 用于心跳線和數據同步(在工作中,一般把心跳線分開)DRBD2:eth0:10.0.0.4eth1:172.16.1.4 用于心跳線和數據同步(在工作中,一…

.net 服務器端自定義分頁控件 簡單示例

使用效果如圖&#xff1a; 先將控件添加到工具箱 將控件拖入到頁面 會自動生成如下代碼 <pager:pager ID"Pager1" runat"server" Pagesize"2" OnPageIndexChange"Pager1_PageIndexChange1"> </pager:pager> 后臺代碼自己…

XenApp_XenDesktop_7.6實戰篇之十五:StoreFront的配置

1. StoreFront服務器證書申請 我們將為StoreFront 申請Web 服務器證書&#xff0c;將此證書應用到StoreFront 的IIS 站點上&#xff0c;并將IIS 的443 端口綁定此證書&#xff0c;以使我們從內網可以安全訪問StoreFront 站點。也為后續的與NetScaler 集成做好準備。 1.1 在開…

【無人機組裝與調試】第四章 F450四軸裝機實例-選擇機型、需要的器材工具材料

【無人機組裝與調試】系列課程全集: 第一章 概述 第二章 關于新西達30A電調說明書的問題 第三章 舵機安裝與調整 第四章 F450四軸裝機實例-選擇機型、需要的器材工具材料 第五章 無人機遙控器 第六章 電調、電池、電機 第四章 F450四軸裝機實例-選擇機型、需要的器材工具材料…

面向對象類的使用(15)

本系列文章將會以通俗易懂的對話方式進行教學&#xff0c;對話中將涵蓋了新手在學習中的一般問題。此系列將會持續更新&#xff0c;包括別的語言以及實戰都將使用對話的方式進行教學&#xff0c;基礎編程語言教學適用于零基礎小白&#xff0c;之后實戰課程也將會逐步更新。 若…

服務器安裝紅帽系統進入不圖形界面,CentOS 安裝圖形化界面方法

登錄系統&#xff0c;使用yum 安裝#yum groupinstall X Window System -y安裝GNOME桌面環境#yum groupinstall GNOME Desktop Environment -y如果安裝KDE桌面環境#yum groupinstall KDE (K Desktop Environment) -y如果發生錯誤&#xff1a;Warning: Group GNOME Desktop Env…

Mybatis批量更新數據

Mybatis批量更新數據 第一種方式 [html] view plaincopy print?<update id"updateBatch" parameterType"Map"> update aa set a#{fptm}, b#{csoftrain} where c in …

MASA Auth - SSO與Identity設計

AAAAAAAA即認證、授權、審計、賬號&#xff08;Authentication、Authorization、Audit、Account&#xff09;。在安全領域我們繞不開的兩個問題&#xff1a;授權過程可靠&#xff1a;讓第三方程序能夠訪問所需資源又不泄露用戶數據&#xff0c;常用的多方授權協議主要有 OAuth2…