If you do not what to use the standard notation you can also create/simulate it using infix with something like this:
create a class to hold your target and result:
data class Ternary<T>(val target: T, val result: Boolean)
create some infix functions to simulate a ternary operation
infix fun <T> Boolean.then(target: T): Ternary<T> {
return Ternary(target, this)
}
infix fun <T> Ternary<T>.or(target: T): T {
return if (this.result) this.target else target
}
Then you will be able to use it like this:
val collection: List<Int> = mutableListOf(1, 2, 3, 4)
var exampleOne = collection.isEmpty() then "yes" or "no"
var exampleTwo = (collection.isNotEmpty() && collection.contains(2)) then "yes" or "no"
var exampleThree = collection.contains(1) then "yes" or "no"