كيفية استخدام break و continue داخل forEach في Kotlin؟
مرحباً بالجميع! بدأت تعلم Kotlin وواجهت مشكلة غير متوقعة. عندما أكتب حلقة `for` عادية، يمكنني استخدام `break` و `continue` بسهولة:
```kotlin
for (i in 1..10) {
if (i == 5) break
if (i % 2 == 0) continue
println(i)
}
```
ولكن بمجرد أن أحاول فعل الشيء نفسه داخل `forEach`:
```kotlin
val numbers = listOf(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)
numbers.forEach { i ->
if (i == 5) break // خطأ في الترجمة!
if (i % 2 == 0) continue // خطأ أيضاً!
println(i)
}
```
يُصدر المترجم خطأ: "break and continue are only allowed inside a loop". أفهم أن `forEach` ليست حلقة، بل دالة عالية المستوى تأخذ لامبدا. لكني بحاجة إلى طريقة لإيقاف التنفيذ أو تخطي التكرار. أرجو إرشادي كيف أفعل ذلك بشكل صحيح؟ هل هناك بديل؟ جربت استخدام `return` لكنه يخرج من الدالة بأكملها، وليس من `forEach`. شكراً مسبقاً على المساعدة!
<<>>