Ebben a cikkben példákkal megismerheti a beágyazott hurkokról és azok működéséről.
Ha egy hurok létezik egy másik hurok testében, akkor beágyazott huroknak hívják. Itt van egy példa a beágyazott for-in hurokra.
i-re 1-ben… 5 (// j hurok külső hurok utasításai 1-ben …
Itt a for j in 1… 2
belső hurokként for i in 1… 5
ismert hurok a külső hurok testében található .
Meg kell jegyezni, hogy a beágyazott hurok nem tartalmazhat azonos típusú hurokokat. Például helyezhet egy darab hurokot a for ciklus testébe, és ez még mindig beágyazott hurok.
Swift Nested for-in hurok
A beágyazott for-in hurok egy for-in ciklust tartalmaz utasításként egy másik for-in cikluson belül. Szükség szerint tetszőleges számú beágyazott be-hurok lehet.
1. példa: Swift Nested for-in hurok
for i in 1… 5 ( print("Outer loop iteration ", i) for j in 1… 2 ( print("Inner loop iteration ", j) print("i = (i); j = (j)") ) )
A program futtatásakor a kimenet a következő lesz:
Külső hurok ismétlése 1 Belső hurok ismétlése 1 i = 1; j = 1 Belső hurok iterációja 2 i = 1; j = 2 Külső hurok iterációja 2 Belső hurok iterációja 1 i = 2; j = 1 Belső hurok iterációja 2 i = 2; j = 2 Külső hurok iteráció 3 Belső hurok iteráció 1 i = 3; j = 1 Belső hurok iterációja 2 i = 3; j = 2 Külső hurok iterációja 4 Belső hurok iterációja 1 i = 4; j = 1 Belső hurok iterációja 2 i = 4; j = 2 Külső hurok iterációja 5 Belső hurok iterációja 1 i = 5; j = 1 Belső hurok iterációja 2 i = 5; j = 2
A fenti programban a külső hurok ötször ismétlődik. A külső hurok minden iterációjában a belső hurok kétszer ismétlődik.
Swift Fészkel, míg a hurok
A beágyazott while ciklus egy while ciklust tartalmaz utasításként egy másik while ciklus belsejében. Szükség szerint tetszőleges számú beágyazott ciklus lehet.
2. példa: Swift beágyazott, miközben hurok
var i = 1 while i <= 5 ( print("Outer loop iteration ", i) var j = 1 while j <= 2 ( print("Inner loop iteration ", j) print("i = (i); j = (j)") j += 1 ) i += 1 )
A program kimenete megegyezik a fenti programmal.
Swift Nested ismétlődő, míg a hurok
A beágyazott ismétlés, míg a hurok egy ismétlés közbeni ciklust tartalmaz utasításként egy másik ismétlés közbeni ciklusban. Szükség szerint tetszőleges számú beágyazott ciklus lehet.
3. példa: Gyors beágyazott ismétlődő hurok
var i = 1 repeat ( print("Outer loop iteration ", i) var j = 1 repeat ( print("Inner loop iteration ", j) print("i = (i); j = (j)") j += 1 ) while (j <= 2) i += 1 ) while (i <= 5)
A program kimenete megegyezik a fenti programmal.
Különböző típusú gyors beágyazott hurok
Nem szükséges azonos típusú beágyazott hurkok. Létrehozhat beágyazott hurkok variációit is, ha egy típusú hurkot helyez el más típusú hurkokba.
3. példa: Swift Nested Loop of while and for
Az alábbi program különféle típusú beágyazott hurkot tartalmaz (while és for-in ciklus).
var i = 1 while i <= 5 ( print("Outer loop iteration ", i) for j in 1… 2 ( print("Inner loop iteration ", j) print("i = (i); j = (j)") ) i += 1 )
A program kimenete megegyezik a fenti programmal.
4. példa: Programozás egy minta létrehozására Swift hurkok segítségével
A beágyazott hurkokat gyakran használják minták létrehozására a programozás során. Az alábbi program megmutatja, hogyan hozhat létre egyszerű mintát beágyazott hurkok segítségével.
let rows = 5 for i in 1… rows ( for j in 1… i ( print("(j) ", terminator: "") ) print("") )
A program futtatásakor a kimenet a következő lesz:
1 1 2 1 2 3 1 2 3 4 1 2 3 4 5