C#中if語句使用概述
C#語言有很多值得學(xué)習(xí)的地方,這里我們主要介紹C#使用if語句。如果想根據(jù)一個(gè)布爾表達(dá)式的結(jié)果選擇執(zhí)行兩個(gè)不同的代碼塊,就可以C#使用if語句。
理解if語句的語法
if語句的語法格式如下(if和else是關(guān)鍵字):
if ( booleanExpression )
statement-1;
else
statement-2;
如果booleanExpression求值為true,就運(yùn)行 statement-1;否則就運(yùn)行statement-2。else關(guān)鍵字和后續(xù)的statement-2是可有可無的。如果沒有else子句,那么在booleanExpression為false的前提下,什么都不會發(fā)生。
例如,以下if語句用于遞增一個(gè)秒表的秒針(暫時(shí)忽略分鐘)。如果seconds的值是59,就重置為0;否則就使用操作符++來遞增:
int seconds;
...
if (seconds == 59)
seconds = 0;
else
seconds++;
只使用布爾表達(dá)式!
C#使用if語句中的表達(dá)式必須放在一對圓括號中。除此之外,表達(dá)式必須是布爾表達(dá)式。在另一些語言中(尤其是C和C++),還可以使用一個(gè)整數(shù)表達(dá)式,編譯器能自動將整數(shù)值轉(zhuǎn)換成true(非零值)或false(零值)。C#不允許這樣做。如果寫這樣的一個(gè)表達(dá)式,編譯器會報(bào)錯(cuò)。
假如在if語句中不慎寫了一個(gè)賦值表達(dá)式,而不是執(zhí)行一個(gè)相等性測試,C#編譯器也能識別你的錯(cuò)誤。例如:
int seconds;
...
if (seconds = 59) // 編譯時(shí)錯(cuò)誤
...
if (seconds == 59) // 正確
不慎而寫成賦值表達(dá)式,是C和C++程序容易出現(xiàn)bug的另一個(gè)原因。在C和C++中,會將所賦的值(59)悄悄地轉(zhuǎn)換成一個(gè)布爾值(任何非零的值都會被視為true),造成每次都必定執(zhí)行C#使用if語句之后的代碼。
最后,可以將一個(gè)布爾變量作為表達(dá)式使用,如下例所示:
bool inWord;
...
if (inWord == true) // 可以,但不常用
...
if (inWord) // 更好
相關(guān)文章
C#從windows剪貼板獲取并顯示文本內(nèi)容的方法
這篇文章主要介紹了C#從windows剪貼板獲取并顯示文本內(nèi)容的方法,涉及C#操作剪貼板的相關(guān)技巧,非常具有實(shí)用價(jià)值,需要的朋友可以參考下2015-04-04
C# 實(shí)現(xiàn)Table的Merge,Copy和Clone
這篇文章主要介紹了C# 實(shí)現(xiàn)Table的Merge,Copy和Clone,幫助大家更好的利用c#處理文件,感興趣的朋友可以了解下2020-12-12
C++聯(lián)合體轉(zhuǎn)換成C#結(jié)構(gòu)的實(shí)現(xiàn)方法
這篇文章主要介紹了C++聯(lián)合體轉(zhuǎn)換成C#結(jié)構(gòu)的實(shí)現(xiàn)方法,需要的朋友可以參考下2014-08-08
C#使用WebClient實(shí)現(xiàn)文件上傳的操作步驟
這篇文章主要介紹了C#使用WebClient實(shí)現(xiàn)文件上傳的操作步驟,文中通過代碼示例給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作有一定的幫助,需要的朋友可以參考下2024-11-11
基于C#實(shí)現(xiàn)的仿windows左側(cè)伸縮菜單效果
這篇文章主要介紹了基于C#實(shí)現(xiàn)的仿windows左側(cè)伸縮菜單效果,比較實(shí)用的功能,需要的朋友可以參考下2014-08-08
C#正則表達(dá)式(Regex類)用法實(shí)例總結(jié)
正則表達(dá)式的主要作用是驗(yàn)證字符串的值是否滿足一定的規(guī)則,在頁面輸入數(shù)據(jù)驗(yàn)證方面的應(yīng)用比較多,下面這篇文章主要給大家介紹了關(guān)于C#正則表達(dá)式(Regex類)用法的相關(guān)資料,需要的朋友可以參考下2022-08-08

