Avatar ·

Wie verwendet man break und continue innerhalb von forEach in Kotlin?

Hallo zusammen! Ich habe angefangen, Kotlin zu lernen, und bin auf ein unerwartetes Problem gestoßen. Wenn ich eine normale `for`-Schleife schreibe, kann ich problemlos `break` und `continue` verwenden: ```kotlin for (i in 1..10) { if (i == 5) break if (i % 2 == 0) continue println(i) } ``` Aber sobald ich dasselbe innerhalb von `forEach` versuche: ```kotlin val numbers = listOf(1, 2, 3, 4, 5, 6, 7, 8, 9, 10) numbers.forEach { i -> if (i == 5) break // Compiler-Fehler! if (i % 2 == 0) continue // Ebenfalls ein Fehler! println(i) } ``` Der Compiler gibt einen Fehler aus: "break and continue are only allowed inside a loop". Ich verstehe, dass `forEach` keine Schleife ist, sondern eine Higher-Order-Funktion, die ein Lambda akzeptiert. Aber ich muss irgendwie die Ausführung abbrechen oder eine Iteration überspringen. Könnt ihr mir sagen, wie das geht?