如何:跳转到循环的下一次迭代
更新:2007 年 11 月
如果已经完成了 Do、For 或 While 循环当前迭代的处理,则可以通过使用 Continue 语句 (Visual Basic) 立即跳转到下一次迭代。
跳转到下一次迭代
跳转到 For...Next 循环的下一次迭代
以常规方法编写 For...Next 循环。
在任何要终止当前迭代并立即进行下一次迭代的位置使用 Continue For。
Public Function findLargestRatio(ByVal high() As Double, _ ByVal low() As Double) As Double Dim ratio As Double Dim largestRatio As Double = Double.MinValue For counter As Integer = 0 To low.GetUpperBound(0) If Math.Abs(low(counter)) < System.Double.Epsilon _ Then Continue For ratio = high(counter) / low(counter) If Double.IsInfinity(ratio) OrElse Double.IsNaN(ratio) _ Then Continue For If ratio > largestRatio Then largestRatio = ratio Next counter Return largestRatio End Function
从嵌套循环中跳转
如果有层层嵌套的 Do、For 或 While 循环,可以立即跳转到任何嵌套级别的下一次迭代。但是,这仅当循环是不同类型时才为真。如果嵌套循环的类型相同(例如嵌套的 While 循环),Continue While 跳转到最内层 While 循环的下一次迭代。
在嵌套的 For 循环中跳转到 Do 循环的下一次迭代
以常规方法编写嵌套循环。
在任何要终止内层 For 循环的当前迭代并跳转到外层 Do 循环的下一次迭代的位置,使用 Continue Do。
Public Sub divideElements(ByRef matrix(,) As Double) Dim i As Integer = -1 Do Until i > matrix.GetUpperBound(0) i += 1 For j As Integer = 0 To matrix.GetUpperBound(1) If matrix(j, j) = 0 Then Continue Do matrix(i, j) /= matrix(j, j) Next j Loop End Sub
请参见
任务
概念
参考
While...End While 语句 (Visual Basic)