Junior — Middle
Може ли да се прекрати предварително цикълът forEach вътре в неговото тяло?
sobes.tech AI
Отговор от AI
В Kotlin и Java стандартният метод forEach не поддържа преждевременно излизане от цикъла чрез break или return от лямбда функцията, тъй като това е функция от по-висок ред.
Ако трябва да прекъснете изпълнението на цикъла предварително, по-добре е да използвате класически цикъл for или for с индекси:
for (item in collection) {
if (someCondition(item)) {
break // преждевременно излизане от цикъла
}
// обработка на item
}
Или да използвате forEach с изключение, но това не се препоръчва поради намалена четливост.
Следователно, не е възможно директно да спрете forEach вътре в тялото му предварително.