1. 程式人生 > >c# 編程學習(四)

c# 編程學習(四)

匹配 als long 適用於 子句 括號 邏輯 沒有 con

邏輯AND(邏輯與)操作符(用&&表示)和邏輯OR(邏輯或) 操作符(用||表示)。這兩個操作符統稱條件邏輯操作符。
只有作為操作數的兩個布爾表達式都為 true。
操作符&&和||都支持短路求值
例如,假定操作符&& 的左操作數求值為 false,整個表達式的結果肯定是 false,無論右操作數的值是什麽
if 語句的語法如下所示(if 和 else 是 C#關鍵字):

if ( booleanExpression )
statement-1;
else
statement-2;
如果booleanExpression(布爾表達式)求值為true,就運行 statement 1;否則運行statement 2。

else 關鍵字和後續的 statement 2 是可選的。
如果沒有 else 子句,而且 booleanExpression 為 false,那麽什麽事情都不會發生,程序繼續執行 if 語句之後的代碼。
註意布爾表達式必須放在圓括號中,否則無法編譯
表達式必須是布爾表達式。在 另一些語言中(尤其是 C 和 C++),還可以使用整數表達式,編譯器自動將整數值轉換成 true(非 0 值)或 false(0)。C#不允許這樣做,看到這樣的表達式會報告編譯錯誤。
switch 語句語法如下(switch,case 和 default 是 C#關鍵字):

switch ( controllingExpression )

{
case constantExpression :
statements
break;
case constantExpression :
statements
break;
...
default :
statements
break;
}
controllingExpression(控制表達式)只求值一次,而且必須包含在圓括號中。然後逐個檢查
constantExpression(常量表達式), 找到和 controllingExpression 值相等的, 就執行由它標識的代碼塊(constantExpression 稱為 case 標簽)。進入代碼塊後,將一直執行到 break;語句。 遇到 break;後,switch 語句結束,程序從 switch 語句結束大括號之後的第一個語句繼續執 行。沒有找到任何匹配的 case 標簽,就運行由可選的 default 標簽所標識的代碼塊。
註意 每個 constantExpression 值都必須唯一,使 controllingExpression 只能與它們當中 的一個匹配。如果 controllingExpression 的值和任何 constantExpression 的值都不匹配,也沒有 default 標簽,程序就從 switch 的結束大括號之後的第一個語句繼 續執行。
switch 語句很有用,但使用須謹慎。switch 語句要嚴格遵循以下規則:
switch 語句的控制表達式只能是某個整型(int,char,long 等)或 string。其他任何 類型(包括 floatfloat 和 double 類型)只能用 if 語句。
case 標簽必須是常量表達式,如 42(控制表達式是 int),‘4‘(控制表達式是 char)或 "42"(控制表達式是 string)。要在運行時計算 case 標簽的值,必須使用 if 語句。
case 標簽必須唯一,不允許兩個 case 標簽具有相同的值。
可以連續寫多個 case 標簽(中間不間插額外的語句),指定在多種情況下都運行相 同的語句。如果像這樣寫,最後一個 case 標簽之後的代碼將適用於所有 case。但 假如兩個標簽之間有額外的代碼,又沒有使用 break 跳出,就不能從第一個標簽 貫穿(也稱直通)到第二個標簽,編譯器會報錯。
例如:

switch (trumps)
{
case Hearts :
case Diamonds : // 允許直通——標簽之間無額外代碼
color = "Red"; // Hearts和Diamonds兩種情況都執行相同的代碼
break;
case Clubs :
color = "Black";
case Spades : // 出錯——標簽之間有額外代碼,又沒有用break跳出
color = "Black";
break;
}

c# 編程學習(四)