Junior — Middle
Μπορεί κανείς να διακόψει πρόωρα έναν βρόχο forEach μέσα στο σώμα του;
sobes.tech AI
Απάντηση από AI
Στην Kotlin και Java, η τυπική μέθοδος forEach δεν υποστηρίζει πρόωρη έξοδο από τον βρόχο μέσω break ή return από το lambda, καθώς είναι μια λειτουργία ανώτερου επιπέδου.
Εάν χρειάζεται να διακόψετε την εκτέλεση του βρόχου πρόωρα, είναι καλύτερο να χρησιμοποιήσετε έναν κλασικό βρόχο for ή ένα for με δείκτες:
for (item in collection) {
if (someCondition(item)) {
break // πρόωρη έξοδος από τον βρόχο
}
// επεξεργασία item
}
Ή να χρησιμοποιήσετε forEach με εξαίρεση, αλλά αυτό δεν συνιστάται λόγω μειωμένης αναγνωσιμότητας.
Επομένως, δεν είναι δυνατή η άμεση διακοπή του forEach μέσα στο σώμα του.