Sobes.tech
Junior — Middle

Vai ir iespējams aprakstīt galvenās atšķirības starp 'for' un 'forEach' konstrukcijām Kotlin un kurās situācijās ir vēlams tās izmantot?

sobes.tech AI

Atbilde no AI

Kotlinā konstrukcija for ir klasiskā cikla veids, kas ļauj pārlūkot kolekcijas vai diapazona elementus ar iespēju izmantot indeksu vai mainīt loģiku cikla iekšienē. Piemēram:

for (item in list) {
    println(item)
}

forEach ir kolekciju paplašināšanas funkcija, kas pieņem lambda izteiksmi un to piemēro katram elementam. Tā ir deklaratīvāka un bieži tiek izmantota kodu īsākai rakstīšanai:

list.forEach { item ->
    println(item)
}

Galvenās atšķirības:

  • for ļauj izmantot break un continue, forEach — nē.
  • forEach lambda izteiksme dažos gadījumos var ietekmēt veiktspēju.

Ieteicams izmantot for, ja nepieciešama iespēja pārtraukt ciklu vai ir sarežģīta loģika, un forEach — vienkāršām operācijām kolekcijas elementiem.