VB.NET If,Else,ElseIf文の基本的な使い方
VB.NET
でのIf
文の基本的な使い方を紹介します。
JavaScript
でのif
文の使用方法をJavaScript If,else,else if文の基本的な使い方で紹介しましたが、他の言語でのif
文とは文法が少し変わるくらいで考え方はほぼ同じです。
VB.NET
でのIf
文は以下のように、ある条件の場合だけ実行したい部分をIf
とEnd If
で囲います。
Dim a As Integer = 1
If a = 1 Then
'aが1の場合のみ実行される
Console.WriteLine("aは1です")
End If
If a = 2 Then
'aが2の場合のみ実行される
Console.WriteLine("aは2です")
End If
'実行結果
'aは1です
If 条件式 Then
としたとき、条件式の結果が真(True
)の場合のみ、If
文の中の条件が実行されます。
And
やOr
条件を含めたいろいろな使い方ができます。
Dim a As Integer = 1
If a = 1 Or a = 2 Then
'aが1または2の場合のみ実行される
Console.WriteLine("aは1または2です")
End If
If a >= 0 And a <= 10 Then
'aが0以上、10以下の場合のみ実行される
Console.WriteLine("aは0以上10以下です")
End If
Else文
条件を満たした場合だけでなく、満たさなかった場合に処理を行いたいときはElse
文を使用します。
Dim a As Integer = 2
If a = 1 Then
'aが1の場合のみ実行される
Console.WriteLine("aは1です")
Else
'aが1以外の場合のみ実行される
Console.WriteLine("aは1ではありません")
End If
'実行結果
'aは1ではありません
満たさなかった場合のみ処理を行いたい場合は、If
文の条件を工夫すればElse
文を使わずに行えます。
Dim a As Integer = 2
If a <> 1 Then
'aが1以外の場合のみ実行される
Console.WriteLine("aは1ではありません")
End If
'または
If Not a = 1 Then
'aが1以外の場合のみ実行される
Console.WriteLine("aは1ではありません")
End If
'実行結果
'aは1ではありません
ElseIf文
例えばa
が1
の場合、2
の場合、といったように、処理を複数分けたいときはElseIf
を使用します。
Dim a As Integer = 2
If a = 1 Then
'aが1の場合のみ実行される
Console.WriteLine("aは1です")
ElseIf a = 2 Then
'aが2の場合のみ実行される
Console.WriteLine("aは2です")
ElseIf a = 3 Then
'aが3の場合のみ実行される
Console.WriteLine("aは3です")
Else
'aが1,2,3以外の場合のみ実行される
Console.WriteLine("aは1,2,3ではありません")
End If
'実行結果
'aは2です
ElseIf
は複数指定できますが、条件を満たした時点で、以降のElseIf
は実行されません。
例えば、以下は最初のIf a < 10 Then
の部分を満たしているため、続くElseIf a < 20 Then
は実行されません。
Dim a As Integer = 2
If a < 10 Then
Console.WriteLine("aは10未満です")
ElseIf a < 20 Then
'実行されない
Console.WriteLine("aは20未満です")
ElseIf a < 30 Then
'実行されない
Console.WriteLine("aは30未満です")
End If
'実行結果
'aは10未満です
ElseIf
を何個も書くような場合は可読性を上げるため、代わりにSelect Case
文を使用することが多いです。
Select Case
の基本的な使い方についてはVB.NET Select Caseの基本的な使い方で紹介します。