HOW TO:測試運算式的多個值
更新:2007 年 11 月
以同一個運算式來比較多個不同的值時,您可以使用 Select...Case 陳述式 (Visual Basic) 語法結構,而不用 If...Then...Else 陳述式 (Visual Basic) 語法結構。If 和 ElseIf (Visual Basic) 陳述式可以在個別的陳述式中評估不同的運算式,而 Select 陳述式則只會評估單一運算式一次,然後便用它來做所有比較。
評估一次運算式並測試多個值
使用 Select...Case 語法結構來指定運算式和要測試的值。每個 Case 陳述式都可以包含一或多個值、值範圍,或值與比較運算子的組合。您可以使用 Case Else 陳述式來處理所有先前 Case 陳述式所沒有測試到的值。下列範例說明這些可能性。
Function bonus(ByVal performance As Integer, ByVal salary As Decimal) _ As Decimal Select performance Case 1 Return salary * 0.1 Case 2, 3 Return salary * 0.09 Case 5 To 7 Return salary * 0.07 Case 4, 8 To 10 Return salary * 0.05 Case Is < 15 Return 100 Case Else Return 0 End Select End Function
Visual Basic 會循著 Select...Case 語法結構中出現 Case 陳述式的順序,將運算式的值與這些陳述式的值一一做比較。如果找到相符項目或 Case Else 陳述式,則會執行對應的陳述式區塊。不論是哪種情況,接著都會執行 End Select 陳述式之後的程式碼。
您可以使用任何數目的 Case 陳述式;不論有多少個 Case 陳述式,您都可以加入一個 Case Else 陳述式或是省略不用。
關於 Select...Case 語法結構程式碼的範例,另外還有 IntelliSense 程式碼片段的版本。在程式碼片段選擇器中,這個程式碼片段位於 [Visual Basic 語言] 中。如需詳細資訊,請參閱 HOW TO:在您的程式碼中插入程式碼片段 (Visual Basic)。