Sobes.tech
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-ის შიგნით წინასწარ არ არის შესაძლებელი.