方法: 制御構造から制御を移す (Visual Basic)
Exit ステートメント (Visual Basic) を使用すると、制御構造から直接抜け出ることができます。 Exit は、直ちに実行を制御構造の最後のステートメントの次のステートメントに移します。 Exit ステートメントの構文では、終了する制御構造の種類を指定します。 次のような Exit ステートメントが可能です。
Exit Select
Exit Try
Exit While
Exit Do
Exit For
Exit ステートメントは、これがサポートされている制御構造内で、必要に応じて何度でも指定できます。 Exit は、その制御構造で必要な処理がすべて完了し、これ以上ステートメントを実行する必要がない場合に便利です。
Exit をサポートしない制御構造。 If、Using、および With ブロックでは、Exit ステートメントを使用して制御を移すことはできません。 そのような結果を得るには、ブロックの End ステートメントにステートメント ラベルを付け、GoTo ステートメントを使用して制御を移します。 ステートメント ラベルの詳細については、「方法: ステートメントへのラベル付け (Visual Basic)」を参照してください。
使用例
入れ子になった制御構造の中で Exit ステートメントを使用すると、Exit ステートメントで指定した種類の最も内側の構造の最後に続くステートメントに制御が渡されます。 次に例を示します。
Public Sub invertElements(ByRef a(,) As Double)
For i As Integer = 0 To UBound(a, 1)
For j As Integer = 0 To UBound(a, 2)
If a(i, j) = 0 Then
' Cannot complete this row; resume outer loop.
Exit For
Else
a(i, j) = 1.0 / a(i, j)
End If
Next j
' Control comes here directly from the Exit For statement.
Next i
End Sub
上の例では、Exit For ステートメントが内側の For ループの中に配置されているため、このループに続くステートメントに制御が渡され、外側の For ループが実行されます。
参照
処理手順
方法: ステートメントへのラベル付け (Visual Basic)