Kotlin-выражение when — это мощная замена Java-оператору switch. Оно может функционировать как выражение (возвращающее значение), так и оператор (выполняющий побочные эффекты).
inis, которая также включает умные приведения типовelse-ветка служит в качестве стандартного запасного вариантаwhen (x) {
1 -> println("One")
2, 3 -> println("Two or Three")
in 4..10 -> println("Between 4 and 10")
is String -> println("It's a string")
else -> println("Something else")
}
switch| Возможность | switch (Java) | when (Kotlin) |
|---|---|---|
| Поддержка выражений | ❌ | ✅ |
| Сопоставление диапазонов | ❌ | ✅ |
| Сопоставление типов | ❌ | ✅ |
| Несколько значений в ветке | ❌ | ✅ |
| Использование без аргумента | ❌ | ✅ |
Когда используется как выражение, компилятор гарантирует, что все случаи покрыты, делая твой код более безопасным и лаконичным. Это избавляет тебя от необходимости писать громоздкие цепочки if-else и снижает риск упустить граничные случаи.
Выражение when в Kotlin может функционировать одновременно как выражение, возвращающее значение, и как оператор, выполняющий побочные эффекты, в то время как switch в Java может только выполнять побочные эффекты.
Новый — ещё не проверен сообществом
Вы