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?