Kotlin如何创建指定长度的随机整数ArrayList?
嘿,我来给你几种简单实用的实现方式,都是Kotlin里给ArrayList<Int>填充随机整数的常用办法:
给ArrayList填充随机整数的实现方案
方法一:Kotlin内置Random批量生成(最简洁)
如果你想快速生成指定数量的随机整数,比如填充10个0到99之间的数,用这种方式最省心:import kotlin.random.Random val numCount = 10 // 需要生成的随机数个数 val min = 0 // 随机数最小值 val max = 100 // 随机数最大值(注意是开区间,实际生成0-99的数) amplitudes.addAll(List(numCount) { Random.nextInt(min, max) })这里用
List(numCount) { ... }创建临时列表,每个元素都是lambda里生成的随机整数,再通过addAll批量加入你的amplitudes列表,一行核心代码搞定。方法二:循环逐个添加(自定义性强)
要是你需要在生成随机数前加一些判断逻辑,或者想逐步控制添加过程,循环添加就很合适:import kotlin.random.Random val numCount = 5 repeat(numCount) { // 生成0到Int最大值之间的随机数,也可以指定范围比如nextInt(1, 10) val randomNum = Random.nextInt() amplitudes.add(randomNum) }用
repeat循环指定次数,每次生成随机数后调用add方法加入列表,自由度拉满。方法三:Java风格Random类(兼容老习惯)
如果你更熟悉Java的Random类写法,也可以这么实现:import java.util.Random val random = Random() val numCount = 8 for (i in 0 until numCount) { amplitudes.add(random.nextInt(0, 200)) // 生成0-199之间的随机数 }这种写法和Java几乎一致,适合从Java过渡到Kotlin的开发者。
小提醒:如果需要固定随机数序列(比如测试时要复现结果),可以给Random指定种子,比如
Random(42),这样每次生成的随机数顺序都是一样的。
内容的提问来源于stack exchange,提问作者Dishonered
相关产品推荐
相关产品推荐

