VB.NET Select Caseで条件分岐するときのポイントと注意点
他の言語のswitch
文をVB.NET
で行うにはSelect Case
を使用します。
Dim num As Integer = 3
Select Case num
Case 1
'numの値が1の場合の処理
Case 2
'numの値が2の場合の処理
Case 3
'numの値が3の場合の処理
Case Else
'numの値が上記以外の場合の処理
End Select
他の言語との比較
例えばJavaScript
では以下のようにbreak
をしなければ次のcase
の処理が行われてしまいます。
var num = 3;
switch (num) {
case 1:
// numの値が1の場合の処理
break;
case 2:
// numの値が2の場合の処理
break;
case 3:
// numの値が3の場合の処理
break;
default:
// numの値が上記以外の場合の処理
}
VB.NET
ではBreak
の記述は不要です。
最初のCase
文の処理が行われれば、以降のCase
の処理は行われません。
複数の条件を指定する
例えば「num
の値が2
または3
の場合」のような条件を指定したい場合は、以下のようにカンマ(,
)で区切って指定します。
num = 3
の場合は複数のCase
に該当しますが、処理が実行されるのは最初に該当したCase
の処理のみです。
Dim num As Integer = 3
Select Case num
Case 1
'numの値が1の場合の処理
Case 2, 3
'numの値が2または3の場合の処理
Case 3
'この処理は行われない
Case Else
'numの値が上記以外の場合の処理
End Select