Функция coerceAtMost

Функция coerceAtMost ограничивает значение указанным максимальным пределом. Если текущее значение меньше или равно максимуму, возвращается исходное значение. Если текущее значение превышает максимум, возвращается максимальное значение. Применяется к числам и другим сравниваемым типам.

Синтаксис

kotlinfun Int.coerceAtMost(maximumValue: Int): Int
kotlinfun Long.coerceAtMost(maximumValue: Long): Long
kotlinfun Double.coerceAtMost(maximumValue: Double): Double
kotlinfun Float.coerceAtMost(maximumValue: Float): Float

Пример

Ограничим число 15 сверху значением 10:

kotlinval num = 15
val res = num.coerceAtMost(10)
println(res)

Результат выполнения кода:

kotlinInt 10

Пример

Ограничим число 7 сверху значением 10:

kotlinval num = 7
val res = num.coerceAtMost(10)
println(res)

Результат выполнения кода:

kotlinInt 7

Пример

Ограничим число с плавающей точкой 12.5 сверху значением 10.0:

kotlinval num = 12.5
val res = num.coerceAtMost(10.0)
println(res)

Результат выполнения кода:

kotlinDouble 10.0

Пример

Использование функции для ограничения значения в цикле:

kotlinvar value = 25
val maxAllowed = 20

value = value.coerceAtMost(maxAllowed)
println(value)

Результат выполнения кода:

kotlinInt 20

Смотрите также

  • функцию coerceAtLeast,
    которая ограничивает значение снизу
  • функцию coerceIn,
    которая ограничивает значение с двух сторон
  • функцию rangeTo,
    которая создает диапазон значений
  • функцию rangeUntil,
    которая создает диапазон не включая конечное значение