Функция coerceIn
Функция coerceIn
ограничивает значение указанным диапазоном.
Если значение находится в пределах диапазона, возвращается само значение.
Если значение меньше минимальной границы диапазона, возвращается минимальная граница.
Если значение больше максимальной границы диапазона, возвращается максимальная граница.
Применяется к числам и другим сравниваемым типам.
Синтаксис
fun Int.coerceIn(minimumValue: Int, maximumValue: Int): Int
fun Long.coerceIn(minimumValue: Long, maximumValue: Long): Long
fun Double.coerceIn(minimumValue: Double, maximumValue: Double): Double
fun Float.coerceIn(minimumValue: Float, maximumValue: Float): Float
fun <T : Comparable<T>> T.coerceIn(minimumValue: T?, maximumValue: T?): T
Пример
Ограничим число 15
диапазоном от 10
до 20
:
val num = 15
val res = num.coerceIn(10, 20)
println(res)
Результат выполнения кода:
Int 15
Пример
Ограничим число 5
диапазоном от 10
до 20
:
val num = 5
val res = num.coerceIn(10, 20)
println(res)
Результат выполнения кода:
Int 10
Пример
Ограничим число 25
диапазоном от 10
до 20
:
val num = 25
val res = num.coerceIn(10, 20)
println(res)
Результат выполнения кода:
Int 20
Пример
Ограничим число с плавающей точкой 3.14
диапазоном от 1.0
до 5.0
:
val num = 3.14
val res = num.coerceIn(1.0, 5.0)
println(res)
Результат выполнения кода:
Double 3.14
Пример
Функция coerceIn
также работает с символами:
val char = 'x'
val res = char.coerceIn('a', 'm')
println(res)
Результат выполнения кода:
Char m
Пример
Функция coerceIn
также работает со строками:
val str = "zebra"
val res = str.coerceIn("apple", "orange")
println(res)
Результат выполнения кода:
String "orange"
Смотрите также
-
функцию
coerceAtLeast
,
которая ограничивает значение снизу -
функцию
coerceAtMost
,
которая ограничивает значение сверху -
функцию
rangeTo
,
которая создает диапазон значений -
функцию
rangeUntil
,
которая создает диапазон, не включая конечное значение