Swift 中退出 for 循环

在 Swift 编程语言中,for 循环是一种常用的循环结构,用于重复执行一段代码块。有时候,在某些条件满足时我们可能希望提前退出 for 循环,Swift 提供了多种方式来实现这一需求。本文将介绍在 Swift 中如何退出 for 循环,并通过代码示例进行解释。

使用 break 语句退出 for 循环

Swift 中的 for 循环支持使用 break 语句提前退出循环。当某个条件满足时,我们可以使用 break 来立即中断循环,并跳出循环体。下面是一个示例代码:

let numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

for number in numbers {
    if number == 5 {
        break
    }
    print(number)
}

在上述代码中,我们使用 break 语句在循环执行到 number 等于 5 的时候提前退出循环。因此,上述代码输出结果为 1 2 3 4

使用带标签的 break 语句退出多层循环

有时候,我们可能在多层嵌套的循环中需要提前退出外层循环。Swift 提供了带标签的 break 语句来实现这一需求。下面是一个示例代码:

outerLoop: for i in 1...3 {
    innerLoop: for j in 1...3 {
        if j == 2 {
            break outerLoop
        }
        print("i: \(i), j: \(j)")
    }
}

在上述代码中,我们使用 outerLoop 标签来标识外层循环,当内层循环执行到 j 等于 2 的时候,使用 break outerLoop 提前退出外层循环。因此,上述代码的输出结果为:

i: 1, j: 1
i: 2, j: 1
i: 3, j: 1

使用 continue 语句跳过当前循环

除了使用 break 语句提前退出循环,Swift 还提供了 continue 语句来跳过当前循环,直接进入下一次循环迭代。下面是一个示例代码:

let numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

for number in numbers {
    if number % 2 == 0 {
        continue
    }
    print(number)
}

在上述代码中,我们使用 continue 语句在循环执行到奇数的时候跳过当前循环,直接进入下一次循环迭代。因此,上述代码的输出结果为 1 3 5 7 9

使用 where 子句筛选循环条件

除了使用 breakcontinue 控制循环的流程之外,Swift 还提供了 where 子句来筛选循环条件。可以在 for 循环语句中使用 where 子句来指定额外的条件,以过滤出满足条件的循环迭代。下面是一个示例代码:

let numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

for number in numbers where number % 2 == 0 {
    print(number)
}

在上述代码中,我们使用 where 子句筛选出了数组 numbers 中的偶数。因此,上述代码的输出结果为 2 4 6 8 10

通过以上示例代码,我们可以看到在 Swift 中如何退出 for 循环。无论是使用 break 语句提前退出循环,还是使用带标签的 break 语句退出多层循环,亦或是使用 continue 语句跳过当前循环迭代,以及使用 where 子句筛选循环条件,Swift 提供