Я бы просто использовал здесь выражение when
, так как вам придется проверять каждое условие независимо.
val errorMessage -> when {
player1.isNullOrBlank() && player2.isNullOrBlank() -> "Please enter a name for both players"
player1.isNullOrBlank() -> "Please enter a name for Player 1"
player2.isNullOrBlank() -> "Please enter a name for Player 2"
else -> null
}
if (errorMessage != null) {
Toast.makeText(this, errorMessage, Toast.LENGTH_LONG).show()
} else {
// success condition
}
Другой пример использования also
вместо присваивания.
when {
player1.isNullOrBlank() && player2.isNullOrBlank() -> "Please enter a name for both players"
player1.isNullOrBlank() -> "Please enter a name for Player 1"
player2.isNullOrBlank() -> "Please enter a name for Player 2"
else -> null
}?.also { errorMessage ->
Toast.makeText(this, errorMessage, Toast.LENGTH_LONG).show()
}