coerceAtMost

Common
JVM
JS
Native
1.0
fun <T : Comparable<T>> T.coerceAtMost(maximumValue: T): T
(source)

Ensures that this value is not greater than the specified maximumValue.

import java.time.DayOfWeek
import kotlin.test.assertFailsWith

fun main(args: Array<String>) {
//sampleStart
println(DayOfWeek.FRIDAY.coerceAtMost(DayOfWeek.SATURDAY)) // FRIDAY
println(DayOfWeek.FRIDAY.coerceAtMost(DayOfWeek.WEDNESDAY)) // WEDNESDAY
//sampleEnd
}

Return this value if it's less than or equal to the maximumValue or the maximumValue otherwise.

Common
JVM
JS
Native
1.0
fun Byte.coerceAtMost(maximumValue: Byte): Byte
(source)
fun Short.coerceAtMost(maximumValue: Short): Short
(source)
fun Int.coerceAtMost(maximumValue: Int): Int
(source)
fun Long.coerceAtMost(maximumValue: Long): Long
(source)
fun Float.coerceAtMost(maximumValue: Float): Float
(source)
fun Double.coerceAtMost(maximumValue: Double): Double
(source)

Ensures that this value is not greater than the specified maximumValue.

import java.time.DayOfWeek
import kotlin.test.assertFailsWith

fun main(args: Array<String>) {
//sampleStart
println(10.coerceAtMost(5)) // 5
println(10.coerceAtMost(20)) // 10
//sampleEnd
}

Return this value if it's less than or equal to the maximumValue or the maximumValue otherwise.

Common
JVM
JS
Native
1.5
fun UInt.coerceAtMost(maximumValue: UInt): UInt
(source)
fun ULong.coerceAtMost(maximumValue: ULong): ULong
(source)
fun UByte.coerceAtMost(maximumValue: UByte): UByte
(source)
fun UShort.coerceAtMost(maximumValue: UShort): UShort
(source)

Ensures that this value is not greater than the specified maximumValue.

import java.time.DayOfWeek
import kotlin.test.assertFailsWith

fun main(args: Array<String>) {
//sampleStart
println(10u.coerceAtMost(5u)) // 5
println(10u.coerceAtMost(20u)) // 10
//sampleEnd
}

Return this value if it's less than or equal to the maximumValue or the maximumValue otherwise.