Continue-Anweisung (Visual Basic)
Überträgt die Steuerung sofort an die nächste Iteration einer Schleife.
Syntax
Continue { Do | For | While }
Bemerkungen
Sie können die Übertragung innerhalb einer Do
-, For
- oder While
-Schleife an die nächste Iteration dieser Schleife durchführen. Die Kontrolle wird sofort an den Schleifenbedingungstest übergeben, was einer Übergabe an die For
- oder While
-Anweisung oder an die Do
- oder Loop
-Anweisung, die die Until
- oder While
-Klausel enthält, gleichkommt.
Sie können Continue
an jeder beliebigen Stelle in der Schleife verwenden, die Übertragungen zulässt. Die Regeln, die die Übertragung der Steuerung zulassen, sind identisch mit der GoTo-Anweisung.
Wenn eine Schleife beispielsweise vollständig in einem Try
-Block, einem Catch
-Block oder einem Finally
-Block enthalten ist, können Sie Continue
verwenden, um die Steuerung aus der Schleife zu übertragen. Wenn hingegen die Try
...End Try
-Struktur innerhalb der Schleife enthalten ist, können Sie Continue
nicht verwenden, um die Steuerung aus dem Finally
-Block zu übertragen, und Sie können diese Anweisung nur dann verwenden, um die Steuerung aus einem Try
- oder Catch
-Block zu übertragen, wenn Sie die Steuerung vollständig aus der Try
...End Try
-Struktur übertragen.
Wenn Sie geschachtelte Schleifen desselben Typs verwenden, z. B. eine Do
-Schleife innerhalb einer anderen Do
-Schleife, springt eine Continue Do
-Anweisung zur nächsten Iteration der innersten Do
-Schleife, die sie enthält. Sie können Continue
nicht verwenden, um zur nächsten Iteration einer enthaltenden Schleife desselben Typs zu springen.
Wenn Sie über geschachtelte Schleifen unterschiedlicher Typen verfügen, z. B. eine Do
-Schleife innerhalb einer For
-Schleife, können Sie mit der nächsten Iteration einer Schleife fortfahren, indem Sie entweder Continue Do
oder Continue For
verwenden.
Beispiel
Im folgenden Codebeispiel wird die Continue While
-Anweisung verwendet, um zur nächsten Spalte eines Arrays zu springen, wenn ein Divisor 0 ist. Continue While
befindet sich innerhalb einer For
-Schleife. Die Steuerung wird an die While col < lastcol
-Anweisung übertragen, die nächste Iteration der innersten While
-Schleife, die die For
-Schleife enthält.
Dim row, col As Integer
Dim lastrow As Integer = 6
Dim lastcol As Integer = 10
Dim a(,) As Double = New Double(lastrow, lastcol) {}
Dim b(7) As Double
row = -1
While row < lastrow
row += 1
col = -1
While col < lastcol
col += 1
a(row, col) = 0
For i As Integer = 0 To b.GetUpperBound(0)
If b(i) = col Then
Continue While
Else
a(row, col) += (row + b(i)) / (col - b(i))
End If
Next i
End While
End While