在C#編程語言中,感嘆號"!"是一個常見的符號,具有多種用途和作用。小編在本文將帶大家探討感嘆號在C#中的不同用法,幫助程式員更好地理解和運用這個小而重要的符號。 **1、邏輯非:** 感嘆號用作邏輯非運算符,可以對布爾值進行取反操作。通過在布爾表達式前面添加感嘆號,我們可以將一個布爾值從"true ...
在C#編程語言中,感嘆號"!"是一個常見的符號,具有多種用途和作用。小編在本文將帶大家探討感嘆號在C#中的不同用法,幫助程式員更好地理解和運用這個小而重要的符號。
1、邏輯非:
感嘆號用作邏輯非運算符,可以對布爾值進行取反操作。通過在布爾表達式前面添加感嘆號,我們可以將一個布爾值從"true"變為"false",或從"false"變為"true"。邏輯非常常用於條件判斷和邏輯運算中。
bool isTrue = true;
bool isFalse = !isTrue; // isFalse的值為false
if(!isFalse){
dosomesting();//這裡就是非False 執行,也就條件是true時執行
}
2、關係運算符:
!= 與等號共同組成關係運算符,檢查兩個操作數的值是否相等。
a!=b
3、非空斷言:
在C# 8.0及更高版本中,感嘆號可以用於非空斷言。當我們聲明一個可能為空的引用類型時,在類型後面添加問號("?")表示可為空。而感嘆號用於標記不為空的斷言,告訴編譯器在此處不要進行空引用檢查。這在我們確定某個引用不會為空時非常有用。
string? nullableString = null;
string nonNullableString = nullableString!; // 非空斷言,告訴編譯器不要檢查nullableString是否為null
4、 可空類型的解引用:
同上條一樣在C# 8.0及更高版本中,感嘆號還可以用於可空類型的解引用操作。可空類型是指允許變數存儲空值的類型,通過在變數後面添加問號("?")來表示。當我們需要從可空類型中獲取實際值時,可以使用感嘆號進行解引用操作,以確保獲取到的值不為空。
int? nullableInt = 10;
int nonNullableInt = nullableInt!.Value;
// 解引用操作,獲取nullableInt的值,這裡必須確保有值才行
結語
本文講述了在C#中感嘆號("!")具有多種作用和用法。通過熟練掌握感嘆號的各種用法,程式員可以更好地利用C#語言的特性,編寫出更清晰、更健的C#代碼。希望本文對你有所收穫,你對C#中感嘆號("!")有什麼看法,歡迎留言討論。
參考:.NET官方文檔
來源公眾號:DotNet開發跳槽