Код: Выделить всё
fun combineThings(newThing:String, otherThing:String):String
{
val thing1 = "abc"
val thing2 = "def"
val thing3 = "ghi"
return when {
newThing.length == 2 -> thing1 + thing2
newThing.contains("qr") -> thing2 + thing3
newThing.contains("123") -> thing1 + thing3
newThing.length == 4 -> thing1 + thing2 + thing3
else -> otherThing
}
}
В этом тривиальном примере я мог бы просто добавить оператор AND с дополнительным логика для каждой ветки. Однако в реальном приложении это займет много времени и может привести к ошибкам. Я ищу способ добавить условный блок вокруг ветвей, требующих дополнительной логики.
Есть ли способ сделать то, что я хочу, с помощью оператора «когда»? Если нет, есть ли другая альтернатива куче операторов if/else?
Подробнее здесь: https://stackoverflow.com/questions/788 ... -in-kotlin
Мобильная версия