Σε αυτό το σεμινάριο, θα μάθετε να χρησιμοποιείτε συνεχίστε για να παραλείψετε την τρέχουσα επανάληψη ενός βρόχου. Επίσης, θα μάθετε επίσης για τη συνέχιση των ετικετών σε αυτό το άρθρο.
Ας υποθέσουμε ότι εργάζεστε με βρόχους. Μερικές φορές είναι επιθυμητό να παραλείψετε την τρέχουσα επανάληψη του βρόχου.
Σε αυτήν την περίπτωση, continue
χρησιμοποιείται. Η continue
κατασκευή παραλείπει την τρέχουσα επανάληψη του βρόχου εγκλεισμού και ο έλεγχος του προγράμματος μεταβαίνει στο τέλος του σώματος του βρόχου.
Πώς λειτουργεί η συνέχεια;
Χρησιμοποιείται σχεδόν πάντα με αν… αλλιώς κατασκευή. Για παράδειγμα,
ενώ (testExpression1) (// κωδικοί1 εάν (testExpression2) (συνέχεια) // κωδικοί2)
Εάν αξιολογηθεί το testExpression2 true
, continue
εκτελείται που παραλείπει όλους τους κωδικούς εντός του while
βρόχου μετά από αυτόν για αυτήν την επανάληψη.
Παράδειγμα: Συνεχίστε το Kotlin
fun main(args: Array) ( for (i in 1… 5) ( println("$i Always printed.") if (i> 1 && i < 5) ( continue ) println("$i Not always printed.") ) )
Όταν εκτελείτε το πρόγραμμα, η έξοδος θα είναι:
1 Εκτυπώνεται πάντα. 1 Δεν εκτυπώνεται πάντα. 2 Εκτυπώνεται πάντα. 3 Εκτυπώνεται πάντα. 4 Εκτυπώνεται πάντα. 5 Εκτυπώνεται πάντα. 5 Δεν εκτυπώνεται πάντα.
Όταν η τιμή του i είναι μεγαλύτερη από 1 και μικρότερη από 5, continue
εκτελείται, η οποία παραλείπει την εκτέλεση του
println ("$ i Δεν εκτυπώνεται πάντα.")
δήλωση.
Ωστόσο, η δήλωση
println ("$ i Πάντα τυπωμένο.")
εκτελείται σε κάθε επανάληψη του βρόχου, επειδή αυτή η δήλωση υπάρχει πριν από την continue
κατασκευή.
Παράδειγμα: Υπολογίστε μόνο το άθροισμα των θετικών αριθμών
Το παρακάτω πρόγραμμα υπολογίζει το άθροισμα των μέγιστων 6 θετικών αριθμών που εισήγαγε ο χρήστης. Εάν ο χρήστης εισαγάγει αρνητικό αριθμό ή μηδέν, παραλείπεται από τον υπολογισμό.
Επισκεφτείτε το Kotlin Basic Input Output για να μάθετε περισσότερα σχετικά με τον τρόπο λήψης πληροφοριών από τον χρήστη.
fun main(args: Array) ( var number: Int var sum = 0 for (i in 1… 6) ( print("Enter an integer: ") number = readLine()!!.toInt() if (number <= 0) continue sum += number ) println("sum = $sum") )
Όταν εκτελείτε το πρόγραμμα, η έξοδος θα είναι:
Εισαγάγετε έναν ακέραιο: 4 Εισαγάγετε έναν ακέραιο: 5 Εισαγάγετε έναν ακέραιο: -50 Εισαγάγετε έναν ακέραιο: 10 Εισαγάγετε έναν ακέραιο: 0 Εισαγάγετε έναν ακέραιο: 0 Εισαγάγετε έναν ακέραιο: 12 άθροισμα = 31
Η ετικέτα Kotlin συνεχίζεται
Αυτό που έχετε μάθει μέχρι τώρα είναι μη επισημασμένη μορφή continue
, η οποία παραλείπει την τρέχουσα επανάληψη του κοντινότερου βρόχου εγκλεισμού. continue
μπορεί επίσης να χρησιμοποιηθεί για να παραλείψει την επανάληψη του επιθυμητού βρόχου (μπορεί να είναι εξωτερικός βρόχος) χρησιμοποιώντας continue
ετικέτες.
Πώς λειτουργεί η ετικέτα "Συνέχεια";
Η ετικέτα στο Kotlin ξεκινά με ένα αναγνωριστικό που ακολουθείται από @
.
Εδώ, το outerloop @ είναι μια ετικέτα που επισημαίνεται στο εξωτερικό while loop. Τώρα, χρησιμοποιώντας continue
με την ετικέτα ( continue@outerloop
σε αυτήν την περίπτωση), μπορείτε να παραλείψετε την εκτέλεση κωδικών του συγκεκριμένου βρόχου για αυτήν την επανάληψη.
Παράδειγμα: με ετικέτα συνέχεια
fun main(args: Array) ( here@ for (i in 1… 5) ( for (j in 1… 4) ( if (i == 3 || j == 2) continue@here println("i = $i; j = $j") ) ) )
Όταν εκτελείτε το πρόγραμμα, η έξοδος θα είναι:
i = 1; j = 1 i = 2; j = 1 i = 4; j = 1 i = 5; j = 1
Η χρήση της ετικέτας continue
συχνά αποθαρρύνεται καθώς καθιστά τον κώδικά σας δύσκολο να κατανοηθεί. Εάν βρίσκεστε σε μια κατάσταση όπου πρέπει να χρησιμοποιήσετε την ετικέτα continue
, αναδιαμορφώστε τον κωδικό σας και προσπαθήστε να τον λύσετε με διαφορετικό τρόπο για να τον κάνετε πιο αναγνώσιμο.
Υπάρχουν 3 εκφράσεις διαρθρωτικές άλμα στην Kotlin: break
, continue
και return
. Για να μάθετε break
και να return
εκφράσετε, επισκεφθείτε:
- Διάλειμμα Κότλιν
- Συνάρτηση Kotlin