Sobes.tech
Back to questions
Junior — Middle
85

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

Answer from AI

sobes.tech 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 очень гибким и удобным для управления потоком выполнения.