Visual C# 2005快速入門之switch語句

來源:互聯網
上載者:User

某些時候,在嵌套使用if語句時,所有if語句看起來都非常相似,因為它們都在對一個完全相同的運算式進行求值,惟一的區別是每個if語句都將運算式的結果與一個不同的值進行比較。例如:

if (day == 0)
 dayName = "Sunday";
else if (day == 1)
 dayName = "Monday";
else if (day == 2)
 dayName = "Tuesday";
else if (day == 3)
 ...
else
 dayName = "Unknown";

在這些情況下,通常需要將嵌套的if語句改寫為一個switch語句,使程式更有效、更容易懂。

理解switch語句的文法

switch語句的文法如下(switch,case和default是關鍵字):

switch ( controllingExpression )
{
 case constantExpression :
  statements
  break;
 case constantExpression :
  statements
  break;
 ...
 default :
  statements
  break;
}

controllingExpression(控製表達式)只求值一次。然後,從其constantExpression值等於controllingExpression值的case開始,它下方的所有語句都會一直運行,直到遇到一個break為止。隨後,switch語句將結束,程式從switch結束大括弧之後的第一個語句繼續執行,並忽略其他case。

假如任何一個constantExpression值都不等於controllingExpression的值,就運行可選標籤default之下的語句。

注意 假如controllingExpression的值和任何一個case標籤都不匹配,同時沒有發現一個default標籤,程式會跳過整個switch語句,從它的結束大括弧之後的第一個語句繼續執行。

例如,前面的嵌套if語句可以改寫為以下switch語句:

switch (day)
{
 case 0 :
  dayName = "Sunday";
  break;
 case 1 :
  dayName = "Monday";
  break;
 case 2 :
  dayName = "Tuesday";
  break;
 ...
 default :
  dayName = "Unknown";
  break;
}

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.