English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Swift嵌套循环

En este artículo, aprenderá a través de ejemplos sobre los bucles anidados y su modo de funcionamiento.

Si un bucle existe dentro del cuerpo de otro bucle, se llama bucle anidado. Esto es for anidado.-Ejemplo de bucle in

for i in 1...5 {
    //Sentencias del bucle exterior
    for j in 1...2 {
        //Sentencias del bucle interior
    }
    //Sentencias del bucle exterior
}

Aquí, for j in 1...2 Llamado bucle interior, que se encuentra dentro de for i in 1...5Llamado cuerpo del bucle exterior.

Es importante tener en cuenta que los bucles anidados no necesariamente deben contener el mismo tipo de bucle. Por ejemplo, puede poner un bucle while en el cuerpo de un bucle for, pero aún así es un bucle anidado.

Bucles anidados for...in en Swift

Anidadofor-En el bucle inEn otro for-Incluye un for en el bucle in-Como una sentencia. Puede tener un número ilimitado de for anidados según sea necesario.-En el bucle in

示例1:For anidado en Swift-En el bucle in

for i in 1...5 {
    print("外循环迭代 ", i)
    for j in 1...2 {
        print("内循环迭代 ", j)
        print("i = \(i); j = \(j)")
    }
}

运行该程序时,输出为:

Iteración del bucle exterior  1
Iteración del bucle interior  1
i = 1; j = 1
Iteración del bucle interior  2
i = 1; j = 2
Iteración del bucle exterior  2
Iteración del bucle interior  1
i = 2; j = 1
Iteración del bucle interior  2
i = 2; j = 2
Iteración del bucle exterior  3
Iteración del bucle interior  1
i = 3; j = 1
Iteración del bucle interior  2
i = 3; j = 2
Iteración del bucle exterior  4
Iteración del bucle interior  1
i = 4; j = 1
Iteración del bucle interior  2
i = 4; j = 2
Iteración del bucle exterior  5
Iteración del bucle interior  1
i = 5; j = 1
Iteración del bucle interior  2
i = 5; j = 2

En el programa anterior, el bucle exterior itera5vez. En cada iteración del bucle exterior, cada iteración del bucle interior2vez. En cada iteración del bucle exterior, cada iteración del bucle interior

Bucles anidados while en Swift

AnidadoBucle whileIncluye un bucle while, como una sentencia dentro de otro bucle while. Puede establecer un número ilimitado de bucles while anidados según sea necesario.

示例2:Bucles anidados de while en Swift

var i = 1
while i <= 5 {
    print("外循环迭代 ", i)
    var j = 1
    mientras (j <= 2 {
        print("内循环迭代 ", j)
        print("i = \(i); j = \(j)")
        j += 1
    }
    i += 1
}

该程序的输出与上述程序相同。

Bucles anidados de repetición...while en Swift

AnidadoBucle repeat while anidado Incluye un repeat-Un bucle while como otro repeat-Sentencias dentro de un bucle while. Puede establecer un número ilimitado de bucles while anidados según sea necesario.

示例3:Bucles anidados de repetición en Swift

var i = 1
repita {
    print("外循环迭代 ", i)
    var j = 1
    repita {
        print("内循环迭代 ", j)
        print("i = \(i); j = \(j)")
        j += 1
    } mientras (j <= 2)
    i += 1
} mientras (i <= 5)

该程序的输出与上述程序相同。

Bucles anidados de Swift de diferentes tipos

No es necesario que las bucles anidadas tengan el mismo tipo. También se pueden crear variantes de bucles anidados colocando un tipo de bucle dentro de otro tipo de bucle.

示例3:while 和 for的Swift嵌套循环

下面的程序包含不同类型的嵌套循环(while和for-in循环)。

var i = 1
while i <= 5 {
    print("外循环迭代 ", i)
    for j in 1...2 {
        print("内循环迭代 ", j)
        print("i = \(i); j = \(j)")
    }
    i += 1
}

该程序的输出与上述程序相同。

示例4:使用Swift循环创建图案的程序

嵌套循环通常用于在编程中创建模式。下面的程序显示了如何使用嵌套循环创建简单的图案。

let rows = 5
for i in 1...rows {
    for j in 1...i {
        print("\(j) ", terminator: "")
    }
    print("")
}

运行该程序时,输出为:

1
1 2
1 2 3
1 2 3 4
1 2 3 4 5