Continue-Anweisung (Visual Basic)
Aktualisiert: November 2007
Überträgt die Steuerung direkt an die nächste Iteration einer Schleife
Continue { Do | For | While }
Hinweise
Sie können die Steuerung aus einer Do-Schleife, einer For-Schleife oder einer While-Schleife an die nächste Iteration der jeweiligen Schleife übertragen. Die Steuerung wird direkt an den Test der Schleifenbedingung übergeben. Dies entspricht dem Übertragen der Steuerung an die For-Anweisung oder die While-Anweisung bzw. die Do-Anweisung oder die Loop-Anweisung, die die Until-Klausel bzw. die While-Klausel enthält.
Sie können Continue an einer beliebigen Position in der Schleife verwenden, die das Übertragen der Steuerung zulässt. Die Regeln, die das Übertragen der Steuerung zulassen, entsprechen den Regeln für die GoTo-Anweisung.
Wenn sich beispielsweise eine Schleife vollständig in einem Try-Block, einem Catch-Block oder einem Finally-Block befindet, können Sie mit Continue die Steuerung aus der Schleife übertragen. Wenn sich hingegen die Try...End Try-Struktur in der Schleife befindet, können Sie nicht mit Continue die Steuerung aus dem Finally-Block übertragen, und Sie können mit dieser Anweisung die Steuerung nur aus einem Try-Block oder einem Catch-Block übertragen, wenn die Steuerung vollständig aus der Try...End Try-Struktur übertragen wird.
Bei geschachtelten Schleifen desselben Typs, z. B. einer Do-Schleife in einer weiteren Do-Schleife, springt eine Continue Do-Anweisung zur nächsten Iteration der innersten Do-Schleife, die sie enthält. Sie können nicht mit Continue zur nächsten Iteration einer enthaltenden Schleife desselben Typs springen.
Bei geschachtelten Schleifen von unterschiedlichem Typ, z. B. einer Do-Schleife in einer For-Schleife, können Sie mit Continue Do bzw. Continue For zur nächsten Iteration einer der beiden Schleifen springen.
Beispiel
Im folgenden Codebeispiel wird die Continue While-Anweisung verwendet, um zur nächsten Spalte eines Arrays zu springen, wenn ein Divisor 0 (null) ist. Continue While befindet sich in einer For-Schleife. Die Steuerung wird an die While col < lastcol-Anweisung übertragen, bei der es sich um die nächste Iteration der innersten While-Schleife handelt, 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
Siehe auch
Aufgaben
Gewusst wie: Springen zur nächsten Iteration einer Schleife
Referenz
Do...Loop-Anweisung (Visual Basic)
For...Next-Anweisung (Visual Basic)