如何在Android Studio的Kotlin中生成指定范围的随机偶数
Kotlin 生成2-50区间随机偶数实现方案
写法1:与原有Java逻辑完全对齐
如果你要保留和你现有Java代码完全一致的逻辑,直接转换后的Kotlin代码如下:
val startOfRange = 2 val endOfRange = 50 val rand = java.util.Random() val randomEven = startOfRange + rand.nextInt((endOfRange - startOfRange) / 2) * 2
写法2:Kotlin 原生简洁实现(更推荐)
Kotlin 标准库内置了区间操作API,直接构造偶数步长的区间再取随机值即可,代码更简洁易读,生成结果和原有Java逻辑完全等价:
// 步长为2的区间自动筛选出所有偶数,直接取随机值,范围包含2和50两个端点 val randomEven = (2..50 step 2).random()
如果需要频繁使用这个能力,可以封装成通用扩展函数:
/** * 从首尾均为偶数的Int区间中取随机偶数 */ fun ClosedRange<Int>.randomEven(): Int { require(start % 2 == 0 && endInclusive % 2 == 0) { "区间首尾必须为偶数" } return (start..endInclusive step 2).random() } // 调用示例 val randomEven = (2..50).randomEven()
内容的提问来源于stack exchange,提问作者Syed Irfan Hussaini
相关产品推荐
相关产品推荐

