C#中感嘆號(!)的一些常見用法小結(jié)
在C#中,感嘆號(!)有多種用途,具體取決于上下文。下面是一些常見的用法和示例:
- 邏輯非運(yùn)算符:感嘆號可以用作邏輯非運(yùn)算符,用于取反布爾值。它將
true
轉(zhuǎn)換為false
,將false
轉(zhuǎn)換為true
。示例:
bool isTrue = true; bool isFalse = !isTrue; // isFalse的值為false
- 空引用檢查:感嘆號可以與空值合并操作符(
?.
)一起使用,用于進(jìn)行空引用檢查。它表示如果左側(cè)的表達(dá)式為null
,則拋出NullReferenceException
異常。示例:
string name = null; string upperCaseName = name!.ToUpper(); // 如果name為null,將拋出NullReferenceException異常
- 非空斷言運(yùn)算符:感嘆號可以用作非空斷言運(yùn)算符,在已知某個表達(dá)式不為
null
時,可以使用感嘆號告訴編譯器不進(jìn)行空引用檢查。示例:
string message = GetMessageFromExternalSource(); string upperCaseMessage = message!.ToUpper(); // 告訴編譯器message不為null,不進(jìn)行空引用檢查
- 泛型約束:感嘆號可以用作泛型類型參數(shù)的約束,表示該類型參數(shù)必須是非可空值類型。示例:
public class MyClass<T> where T : struct // T必須是非可空值類型 { // ... }
- 標(biāo)簽名稱:感嘆號可以用作標(biāo)簽名稱的一部分,用于標(biāo)識代碼中的標(biāo)簽語句。示例:
startLoop: for (int i = 0; i < 10; i++) { if (i == 5) goto startLoop; // 跳轉(zhuǎn)到標(biāo)簽startLoop處繼續(xù)執(zhí)行循環(huán) }
這些是C#中感嘆號的一些常見用法和示例。請注意,感嘆號的具體含義取決于上下文,在不同的情況下可能有不同的用途和行為。
到此這篇關(guān)于C#中感嘆號(!)的一些常見用法小結(jié)的文章就介紹到這了,更多相關(guān)C# 感嘆號內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
WinForm開發(fā)中屏蔽WebBrowser腳本錯誤提示的方法
這篇文章主要介紹了WinForm開發(fā)中屏蔽WebBrowser腳本錯誤提示的方法,在C#項目開發(fā)中比較實用,需要的朋友可以參考下2014-08-08C#實現(xiàn)的上傳圖片、保存圖片、加水印、生成縮略圖功能示例
這篇文章主要介紹了C#實現(xiàn)的上傳圖片、保存圖片、加水印、生成縮略圖功能,結(jié)合實例形式較為詳細(xì)的分析了C#圖片上傳、保存、水印、縮略圖等相關(guān)操作技巧,需要的朋友可以參考下2019-02-02C#打包部署并把.net framework框架打到安裝包的方法步驟
打包c(diǎn)#程序時,有時需要添加.net framework組件到安裝包,本文就來介紹一下C#打包部署并把.net framework框架打到安裝包的方法步驟,具有一定的參考價值,感興趣的可以了解一下2023-10-10c# SqlDataAdapter中的Fill是怎么實現(xiàn)的
這篇文章主要介紹了c# SqlDataAdapter中的Fill是怎么實現(xiàn)的,文中講解非常細(xì)致,代碼幫助大家更好的理解和學(xué)習(xí),感興趣的朋友可以了解下2020-07-07C# winform實現(xiàn)右下角彈出窗口結(jié)果的方法
這篇文章主要介紹了C# winform實現(xiàn)右下角彈出窗口結(jié)果的方法,結(jié)合實例形式分析了C#窗口操作的相關(guān)技巧,需要的朋友可以參考下2017-06-06