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