coerceIn
Ensures that this value lies in the specified range minimumValue..maximumValue.
Since Kotlin
1.0Return
this value if it's in the range, or minimumValue if this value is less than minimumValue, or maximumValue if this value is greater than maximumValue.
Samples
import java.time.DayOfWeek
import kotlin.test.assertFailsWith
fun main() {
//sampleStart
val workingDays = DayOfWeek.MONDAY..DayOfWeek.FRIDAY
println(DayOfWeek.WEDNESDAY.coerceIn(workingDays)) // WEDNESDAY
println(DayOfWeek.SATURDAY.coerceIn(workingDays)) // FRIDAY
println(DayOfWeek.FRIDAY.coerceIn(DayOfWeek.SATURDAY, DayOfWeek.SUNDAY)) // SATURDAY
//sampleEnd
}
Ensures that this value lies in the specified range minimumValue..maximumValue.
Since Kotlin
1.0Return
this value if it's in the range, or minimumValue if this value is less than minimumValue, or maximumValue if this value is greater than maximumValue.
Samples
import java.time.DayOfWeek
import kotlin.test.assertFailsWith
fun main() {
//sampleStart
println(10.coerceIn(1, 100)) // 10
println(10.coerceIn(1..100)) // 10
println(0.coerceIn(1, 100)) // 1
println(500.coerceIn(1, 100)) // 100
// 10.coerceIn(100, 0) // will fail with IllegalArgumentException
//sampleEnd
}
Ensures that this value lies in the specified range.
Since Kotlin
1.1Return
this value if it's in the range, or range.start
if this value is less than range.start
, or range.endInclusive
if this value is greater than range.endInclusive
.
Samples
import java.time.DayOfWeek
import kotlin.test.assertFailsWith
fun main() {
//sampleStart
println(10.1.coerceIn(1.0..10.0)) // 10.0
println(9.9.coerceIn(1.0..10.0)) // 9.9
// 9.9.coerceIn(1.0..Double.NaN) // will fail with IllegalArgumentException
//sampleEnd
}
Ensures that this value lies in the specified range.
Since Kotlin
1.0Return
this value if it's in the range, or range.start
if this value is less than range.start
, or range.endInclusive
if this value is greater than range.endInclusive
.
Samples
import java.time.DayOfWeek
import kotlin.test.assertFailsWith
fun main() {
//sampleStart
val workingDays = DayOfWeek.MONDAY..DayOfWeek.FRIDAY
println(DayOfWeek.WEDNESDAY.coerceIn(workingDays)) // WEDNESDAY
println(DayOfWeek.SATURDAY.coerceIn(workingDays)) // FRIDAY
println(DayOfWeek.FRIDAY.coerceIn(DayOfWeek.SATURDAY, DayOfWeek.SUNDAY)) // SATURDAY
//sampleEnd
}
Ensures that this value lies in the specified range.
Since Kotlin
1.0Return
this value if it's in the range, or range.start
if this value is less than range.start
, or range.endInclusive
if this value is greater than range.endInclusive
.
Samples
import java.time.DayOfWeek
import kotlin.test.assertFailsWith
fun main() {
//sampleStart
println(10.coerceIn(1, 100)) // 10
println(10.coerceIn(1..100)) // 10
println(0.coerceIn(1, 100)) // 1
println(500.coerceIn(1, 100)) // 100
// 10.coerceIn(100, 0) // will fail with IllegalArgumentException
//sampleEnd
}
Ensures that this value lies in the specified range minimumValue..maximumValue.
Since Kotlin
1.5Return
this value if it's in the range, or minimumValue if this value is less than minimumValue, or maximumValue if this value is greater than maximumValue.
Samples
import java.time.DayOfWeek
import kotlin.test.assertFailsWith
fun main() {
//sampleStart
println(10u.coerceIn(1u, 100u)) // 10
println(10u.coerceIn(1u..100u)) // 10
println(0u.coerceIn(1u, 100u)) // 1
println(500u.coerceIn(1u, 100u)) // 100
// 10u.coerceIn(100u, 0u) // will fail with IllegalArgumentException
//sampleEnd
}
Ensures that this value lies in the specified range.
Since Kotlin
1.5Return
this value if it's in the range, or range.start
if this value is less than range.start
, or range.endInclusive
if this value is greater than range.endInclusive
.
Samples
import java.time.DayOfWeek
import kotlin.test.assertFailsWith
fun main() {
//sampleStart
println(10u.coerceIn(1u, 100u)) // 10
println(10u.coerceIn(1u..100u)) // 10
println(0u.coerceIn(1u, 100u)) // 1
println(500u.coerceIn(1u, 100u)) // 100
// 10u.coerceIn(100u, 0u) // will fail with IllegalArgumentException
//sampleEnd
}