Σε αυτό το άρθρο, θα μάθετε για ένθετους βρόχους και πώς λειτουργεί, με παραδείγματα.
Εάν υπάρχει βρόχος μέσα στο σώμα ενός άλλου βρόχου, ονομάζεται ένθετος βρόχος. Ακολουθεί ένα παράδειγμα ένθετου βρόχου εισόδου.
για i in 1… 5 (// δηλώσεις εξωτερικού βρόχου για j in 1… 2 (// δηλώσεις εσωτερικού βρόχου) // δηλώσεις outerloop)
Εδώ, ο for j in 1… 2
βρόχος γνωστός ως εσωτερικός βρόχος, βρίσκεται μέσα στο σώμα for i in 1… 5
γνωστός ως εξωτερικός βρόχος.
Πρέπει να σημειωθεί ότι, ο ένθετος βρόχος μπορεί να μην περιέχει βρόχους ίδιου τύπου. Για παράδειγμα, μπορείτε να βάλετε ένα βρόχο λίγο στο σώμα του βρόχου για και εξακολουθεί να είναι ένας ένθετος βρόχος.
Swift Nested for-in Loop
Ένας ένθετος βρόχος εισόδου περιέχει έναν βρόχο εισόδου ως δήλωση μέσα σε έναν άλλο βρόχο εισόδου. Μπορείτε να έχετε οποιοδήποτε αριθμό ένθετων βρόχων για είσοδο, όπως απαιτείται.
Παράδειγμα 1: Swift Nested for-in Loop
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)") ) )
Όταν εκτελείτε το πρόγραμμα, η έξοδος θα είναι:
Επανάληψη εξωτερικού βρόχου 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 Nested ενώ βρόχος
Ένας βρόχος ένθετου ενώ περιέχει έναν βρόχο λίγου ως δήλωση μέσα σε έναν άλλο βρόχο ενώ. Μπορείτε να έχετε οποιονδήποτε αριθμό ένθετων ενώ βρόχους απαιτείται.
Παράδειγμα 2: Swift Nested while Loop
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 )
Η έξοδος του προγράμματος είναι ίδια με το παραπάνω πρόγραμμα.
Swift Nested επανάληψη-ενώ βρόχος
Ένα ένθετο επανάληψη ενώ ο βρόχος περιέχει έναν επαναλαμβανόμενο βρόχο επανάληψης ως δήλωση μέσα σε έναν άλλο βρόχο επανάληψης-ενώ Μπορείτε να έχετε οποιονδήποτε αριθμό ένθετων ενώ βρόχους απαιτείται.
Παράδειγμα 3: Swift Nested επανάληψη-ενώ βρόχος
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)
Η έξοδος του προγράμματος είναι ίδια με το παραπάνω πρόγραμμα.
Swift Nested Loop διαφορετικών τύπων
Δεν είναι απαραίτητο να έχετε ένθετους βρόχους ίδιου τύπου. Μπορείτε επίσης να δημιουργήσετε παραλλαγές ένθετων βρόχων τοποθετώντας έναν τύπο βρόχου σε άλλους τύπους βρόχων.
Παράδειγμα 3: Swift Nested Loop of while and for
Το παρακάτω πρόγραμμα περιέχει ένθετο βρόχο διαφορετικών τύπων (ενώ και για βρόχο εισόδου).
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 )
Η έξοδος του προγράμματος είναι ίδια με το παραπάνω πρόγραμμα.
Παράδειγμα 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