Continue 陳述式 (Visual Basic)
將控制權立即轉移到迴圈 (Loop) 的下一個反覆運算。
Continue { Do | For | While }
備註
您可以從 Do、For 或 While 迴圈內轉移到該迴圈的下一個反覆運算。 控制權會立即移交給迴圈條件測試,這相當於轉移到 For 或 While 陳述式,或是轉移到包含 Until 或 While 子句的 Do 或 Loop 陳述式。
您可以在迴圈中任何允許轉移的位置使用 Continue。 允許控制權轉移的規則與 GoTo 陳述式相同。
例如,如果迴圈完全包含在 Try 區塊、Catch 區塊或 Finally 區塊內,您便可以使用 Continue 轉移到迴圈之外。 相反地,如果 Try...End Try 結構包含於迴圈內,您就無法使用 Continue 將控制權轉移到 Finally 區塊之外,而是只能在要完全轉移到 Try...End Try 結構外時,用它轉移到 Try 或 Catch 區塊之外。
如果您具有相同類型的巢狀迴圈 (例如,將 Do 迴圈置於另一個 Do 迴圈內),則 Continue Do 陳述式會跳到包含該陳述式之最內層 Do 迴圈的下一個反覆運算。 您無法使用 Continue 跳到相同類型之外層迴圈的下一個反覆運算。
如果您具有不同類型的巢狀迴圈 (例如,將 Do 迴圈置於 For 迴圈內),則可以使用 Continue Do 或 Continue For,跳到這些任一迴圈的下一個反覆運算。
範例
下列程式碼範例會使用 Continue While 陳述式,在除數為零時跳到陣列的下一行。 Continue While 會在 For 迴圈內。 它會轉移到 While col < lastcol 陳述式,這是包含 For 迴圈之最內層 While 迴圈的下一個反覆運算。
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