Другой вариант (который я лично предпочитаю) - создать функцию расширения:
fun Any.equalsAny(vararg values: Any): Boolean {
return this in values
}
Пример использования:
val result1 = 20.equalsAny(10, 20, 30) // Returns true
val result2 = "ABC".equalsAny(10, 20, 30, 99 , 178) // Returns false
val result3 = "ABC".equalsAny("ABC", "XYD", "123") // Returns true
val result4 = "ABC".equalsAny("xxx", "XYD", "123") // Returns false
Вы можете даже смешивать типы, и это прекрасно работает:
val a = 1
val b = "10"
val c = true
val search = 999
val search2 = false
val result5 = search.equalsAny(a, b, c) // Returns false
val result6 = search2.equalsAny(a, b, c, 872, false) // Returns true