程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> Visual Basic語言 >> VB.NET >> vb.net條件分支語句

vb.net條件分支語句

編輯:VB.NET

一、簡單If條件語句
使用在稱之為分支結構的特殊語句塊中的條件表達式控制了程序中哪些語句被執行以及什麼樣的執行次序執行。“If...Then”分支結構在程序中計算條件值,並根據條件值決定下一步執行的操作。最簡單的“If...Then”分支結構可以只寫在一行:
    If Condition Then Statement[Else statement]

注意:“If...Then”分支結構用於給程序添加邏輯控制能力。這裡,“Condition”是個條件表達式,“Statement”是條件有效的Visual Basic語句。例如:
    If Score>=20 Then Label1.Text="You Win!"是個使用了下述條件表達式的分支結構:Score>=20
根據這個表達式的值,程序決定是否把Label1對象的“Text”屬性設置為“You Win!”。如果“Score”變量的值大於等於20,Visual Basic設置該屬性的值,否則,Visual Basic跳過這條賦值語句,然後執行事件過程中的下一行語句。這類比較運算的結果不是“True”就是“False”,條件表達式從來不會產生模稜兩可的值。
二、If...Then...Else語句
Visual Basic還支持另一種格式的“If...Then”分支結構,該結構中包含幾個條件表達式,由多行語句組成,其中包含了重要關鍵字“ElseIf”、“Else”以及“End If”。

If Condition1 Then
   Statements
ElseIf Condition2 Then
   Statements
[其他ElseIf子句及其相應的執行語句]
Else
   Statements
End If

這個結構中,“Condition1”首先被計算。如果這個條件表達式的值為“True”,那麼這個條件表達式下的語句被執行;如果第一個條件的值不是“True”,那麼計算第二個表達式(Condition2)的值,如果第二個條件的值為“True”,那麼這個條件表達式下的語句塊被執行(如果要判斷更多的條件,那麼繼續增加“ElseIf”子句及該子句下的語句塊);如果所有條件表達式的值都不是“True”,那麼執行“Else”子句下的語句塊;最後,整個結構使用“End If”關鍵字結束。多行“If...Then”結構特別適合於分段計算問題,比如稅費方面的計算。下面的代碼展示了如何使用多行“If...Then”結構來確定遞進稅計算問題(收入和稅率的對應關系取自美國國內收入服務1997年稅率表):

If AdjustedIncome<=24650 Then
   '15%稅段
   TaxDue=AdjustedIncome*0.15
ElseIf AdjustedIncome<=59750 Then
   '28%稅段
   TaxDue=3697+((AdjustedIncome-24650)*0.28)
ElseIf AdjustedIncome<=124650 Then
   '31%稅段
   TaxDue=13525+((AdjustedIncome-59750)*0.31)
ElseIf AdjustedIncome<=271050 Then
   '36%稅段
   TaxDue=33644+((AdjustedIncome-124650)*0.36)
Else
   '39.6%稅段
   TaxDue=86348+((AdjustedIncome-271050)*0.396)
End If

注意:總是可以添加更多的“ElseIf”塊到“If...Then”結構中去。但是,當每個“ElseIf”都將相同的表達式比作不同的數值時,這個結構編寫起來很乏味。在這種情況下可以使用“Select Case”判定結構。

三、Select Case結構
Visual Basic還支持在程序中使用“Select Case”分支結構來控制語句的執行。 “Select Case”結構與“If...Then...Else”結構相似,但在處理依賴於某個關鍵變量或稱作測試情況的分支時效率更高。並且,使用“Select Case”結構可以提高程序的可讀性。“Select Case”結構的語法如下所示:

Select Case Variable
     Case Value1
         Statements
     Case Value2
         Statements
     Case Value3
         Statements
     ...
End Select

“Select Case”結構以關鍵字“Select case”開始,以關鍵字“End Select”結束。“Select Case”結構中的“Variable”可以是變量、屬性或者是表達式,“Value1”、“Value2”,“Value3”可以是數值、字符串或與要測試的其他情況相關的其他值,如果其中某個值與變量相匹配,那麼該“Case”子句下的語句被執行,然後Visual Basic執行“End Select”語句後面的語句。“Select Case”結構中可以使用任意多個“Case”子句,“Case”子句中也可以包括多個“Value”值,多個“Value”值之間使用逗號分隔。
下面示例展示了程序中如何使用“Select Case”結構打印與某人年齡相關的信息。當“Age”變量與某個“Case”值匹配時,相應的信息顯示在標簽對象中。

Select Case Age
case 16
    Label1.Text="You can drive now!"
Case 18
    Label1.Text="You can vote now!"
Case 21
    Label1.Text="You can drink wine with your meals."
Case 65
    Label1.Text="Time to retire and have fun!"
End Select

注意:“Select Case”結構比功能等效的“If...Then”結構更清晰易讀。“Select Case”結構還支持“Case Else”子句,該子句可用於當不滿足所有“Case”條件時顯示信息。下面是說明“Case Else”子句用法的一個示例:

Select Case Age
Case 16
    Label1.Text="You can drive now!"
Case 18
    Label1.Text="You can vote now!"
Case 21
    Label1.Text="You can drink wine with your meals."
Case 65
    Label1.Text="Time to retire and have fun!"
Case Else
    Label1.Text="You're a great age!Enjoy it!"
End Select

注意:“Select Case”結構每次都要在開始處計算表達式的值,而“If...Then...Else”結構為每個“ElseIf”語句計算不同的表達式,只有在“If”語句和每個“ElseIf”語句計算相同的表達式時,才能使用“Select Case”結構替換“If...Then...Else”結構。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved