Sobes.tech
Junior — Middle

Можете ли да објасните принцип рада оператора 'when' у језику Kotlin?

sobes.tech АИ

Одговор од АИ

Operator when u Kotlinu je proširena verzija operatora switch iz drugih jezika. Koristi se za izbor jednog od više opcija za izvršavanje koda u zavisnosti od vrednosti izraza.

Princip rada:

  • Izraz nakon when se evaluira.
  • Vrednost se poredi sa svakom od navedenih opcija (grana).
  • Ako se pronađe podudaranje, izvršava se odgovarajući blok koda.
  • Ako nijedna opcija ne odgovara, izvršava se blok else, ako postoji.

Primer:

val x = 3
when (x) {
    1 -> println("Jedan")
    2 -> println("Dva")
    3, 4 -> println("Tri ili četiri")
    in 5..10 -> println("Od pet do deset")
    else -> println("Drugi broj")
}

Karakteristike:

  • Grane mogu sadržavati više vrednosti odvojenih zarezom.
  • Mogu se koristiti provere u opsezima (in), tipovima (is) ili proizvoljnim uslovima.
  • when može da se koristi kao izraz koji vraća vrednost.

Ovo čini when veoma fleksibilnim i korisnim za upravljanje tokom izvršenja.