Sobes.tech
Junior — Middle

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

sobes.tech AI

Отговор от AI

Операторът when в Kotlin е разширена версия на оператора switch от други езици. Той се използва за избор на една от няколко опции за изпълнение на код в зависимост от стойността на израз.

Принцип на работа:

  • Изразът след when се оценява.
  • Стойността се сравнява с всяка от посочените опции (клони).
  • Ако се намери съвпадение, се изпълнява съответният блок код.
  • Ако никоя опция не съвпада, се изпълнява блокът else, ако е наличен.

Пример:

val x = 3
when (x) {
    1 -> println("Едно")
    2 -> println("Две")
    3, 4 -> println("Три или четири")
    in 5..10 -> println("От пет до десет")
    else -> println("Друго число")
}

Характеристики:

  • Клоновете могат да съдържат няколко стойности, разделени с запетая.
  • Могат да се използват проверки в диапазони (in), типове (is) или произволни условия.
  • when може да се използва като израз, който връща стойност.

Това прави when много гъвкав и удобен за управление на потока на изпълнение.