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

Swift 嵌套ループ

この記事では、例を通じてネストループとその動作について学びます。

あるループが他のループの主体内に存在する場合、それをネストループと呼びます。これはネストされたfor-inループの例。

for i in 1...5 {
    //外部ループの文
    for j in 1...2 {
        //内部ループの文
    }
    //外部ループの文
}

ここでは、for j in 1...2 内部ループはfor i in 1...5外部ループの主体内部に呼ばれる

注意すべきことは、ネストループは同じタイプのループを含まない場合もあります。例えば、whileループをforループの主体内に配置することもできますが、それでもネストループです。

Swiftのネストfor...inループ

ネストされたfor-inループ別のfor-inループ内にforを含む-inループを文として使用します。必要に応じて、任意の数のネストforを設定できます。-inループ。

例1:Swiftのネストfor-inループ

for i in 1...5 {
    print("外ループの反復回数 ", i)
    for j in 1...2 {
        print("内ループの反復回数 ", j)
        print("i = \(i); j = \(j)")
    }
}

このプログラムを実行すると、出力は以下のようになります:

外ループがイテレーション  1
内ループがイテレーション  1
i = 1; j = 1
内ループがイテレーション  2
i = 1; j = 2
外ループがイテレーション  2
内ループがイテレーション  1
i = 2; j = 1
内ループがイテレーション  2
i = 2; j = 2
外ループがイテレーション  3
内ループがイテレーション  1
i = 3; j = 1
内ループがイテレーション  2
i = 3; j = 2
外ループがイテレーション  4
内ループがイテレーション  1
i = 4; j = 1
内ループがイテレーション  2
i = 4; j = 2
外ループがイテレーション  5
内ループがイテレーション  1
i = 5; j = 1
内ループがイテレーション  2
i = 5; j = 2

上記のプログラムでは、外ループがイテレーション5回。外ループの各イテレーション中、内ループの各イテレーション2回。

Swiftネストwhileループ

ネストされたwhileループ別のwhileループ内に含まれるwhileループを含みます。必要に応じて、任意の数のネストwhileループを設定できます。

例2:Swiftネストwhileループ

var i = 1
while i <= 5 {
    print("外ループの反復回数 ", i)
    var j = 1
    while j <= 2 {
        print("内ループの反復回数 ", j)
        print("i = \(i); j = \(j)")
        j += 1
    }
    i += 1
}

このプログラムの出力は、上記のプログラムと同じです。

Swiftネストrepeat...whileループ

ネストされたrepeat whileループ 内にrepeatを含む-whileループとして別のrepeat-whileループ内の文。必要に応じて、任意の数のネストwhileループを設定できます。

例3:Swiftネストループの繰り返し

var i = 1
repeat {
    print("外ループの反復回数 ", i)
    var j = 1
    repeat {
        print("内ループの反復回数 ", j)
        print("i = \(i); j = \(j)")
        j += 1
    } while (j <= 2)
    i += 1
} while (i <= 5)

このプログラムの出力は、上記のプログラムと同じです。

異なるタイプのSwiftネストループ

同じタイプのネストループは必要ないことがあります。また、異なるタイプのループを他のループの中に配置することで、ネストループのバリエーションを作成することもできます。

例3:whileとforのSwiftネストループ

以下のプログラムには、異なるタイプのネストループ(whileとfor)が含まれています。-ループ)。

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