coerceIn
所在位置是kotlin.ranges.coerceIn
,其相关用法介绍如下。
用法一
确保此值位于指定范围内 minimumValue .. maximumValue 。
例子:
import java.time.DayOfWeek
import kotlin.test.assertFailsWith
fun main(args: Array<String>) {
//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
}
输出:
WEDNESDAY FRIDAY SATURDAY
如果它在范围内,则返回此值,如果此值小于 minimumValue,则返回 minimumValue,如果此值大于 maximumValue,则返回 maximumValue。
用法二
确保此值位于指定范围内 minimumValue .. maximumValue 。
例子:
import java.time.DayOfWeek
import kotlin.test.assertFailsWith
fun main(args: Array<String>) {
//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
}
输出:
10 10 1 100
如果它在范围内,则返回此值,如果此值小于 minimumValue,则返回 minimumValue,如果此值大于 maximumValue,则返回 maximumValue。
用法三
确保此值位于指定的 range 中。
例子:
import java.time.DayOfWeek
import kotlin.test.assertFailsWith
fun main(args: Array<String>) {
//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
}
输出:
10.0 9.9
如果它在 range 中,则返回此值,如果此值小于 range.start
,则返回 range.start
,如果此值大于 range.endInclusive
,则返回 range.endInclusive
。
用法四
确保此值位于指定的 range 中。
例子:
import java.time.DayOfWeek
import kotlin.test.assertFailsWith
fun main(args: Array<String>) {
//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
}
输出:
WEDNESDAY FRIDAY SATURDAY
如果它在 range 中,则返回此值,如果此值小于 range.start
,则返回 range.start
,如果此值大于 range.endInclusive
,则返回 range.endInclusive
。
用法五
确保此值位于指定的 range 中。
例子:
import java.time.DayOfWeek
import kotlin.test.assertFailsWith
fun main(args: Array<String>) {
//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
}
输出:
10 10 1 100
如果它在 range 中,则返回此值,如果此值小于 range.start
,则返回 range.start
,如果此值大于 range.endInclusive
,则返回 range.endInclusive
。
用法六
确保此值位于指定范围内 minimumValue .. maximumValue 。
例子:
import java.time.DayOfWeek
import kotlin.test.assertFailsWith
fun main(args: Array<String>) {
//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
}
输出:
10 10 1 100
如果它在范围内,则返回此值,如果此值小于 minimumValue,则返回 minimumValue,如果此值大于 maximumValue,则返回 maximumValue。
用法七
确保此值位于指定的 range 中。
例子:
import java.time.DayOfWeek
import kotlin.test.assertFailsWith
fun main(args: Array<String>) {
//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
}
输出:
10 10 1 100
如果它在 range 中,则返回此值,如果此值小于 range.start
,则返回 range.start
,如果此值大于 range.endInclusive
,则返回 range.endInclusive
。
相关用法
- Kotlin coerceAtMost用法及代码示例
- Kotlin coerceAtLeast用法及代码示例
- Kotlin contentToString用法及代码示例
- Kotlin commonPrefixWith用法及代码示例
- Kotlin containsAll用法及代码示例
- Kotlin code用法及代码示例
- Kotlin copyOf用法及代码示例
- Kotlin component2用法及代码示例
- Kotlin contains用法及代码示例
- Kotlin commonSuffixWith用法及代码示例
- Kotlin containsValue用法及代码示例
- Kotlin component1用法及代码示例
- Kotlin contentEquals用法及代码示例
- Kotlin capitalize用法及代码示例
- Kotlin chunkedSequence用法及代码示例
- Kotlin chunked用法及代码示例
- Kotlin associateBy用法及代码示例
- Kotlin all用法及代码示例
- Kotlin map用法及代码示例
- Kotlin filterNot用法及代码示例
- Kotlin reduceRight用法及代码示例
- Kotlin Random.Default用法及代码示例
- Kotlin Byte.inc用法及代码示例
- Kotlin getValue用法及代码示例
- Kotlin Double.dec用法及代码示例
注:本文由纯净天空筛选整理自kotlinlang.org大神的英文原创作品 kotlin.ranges.coerceIn。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。