Random.nextLong所在位置是kotlin.random.Random.nextLong,其相关用法介绍如下。

用法一

open fun nextLong(): Long
fun nextLong(): Long

从随机数生成器中获取下一个随机 Long

生成在Long.MIN_VALUELong.MAX_VALUE(含)之间均匀分布的Long 随机值。

例子:

import kotlin.math.sin
import kotlin.random.Random
import kotlin.test.assertTrue

fun main(args: Array<String>) {
//sampleStart
val randomLongs = List(5) { Random.nextLong() }
println(randomLongs)
val sortedRandomLongs = randomLongs.sorted()
println(sortedRandomLongs)
//sampleEnd
}

输出:

[-1009150539756337542, -1412104674082085627, 726151977405241680, 1824081154953155328, 750723885286146868]
[-1412104674082085627, -1009150539756337542, 726151977405241680, 750723885286146868, 1824081154953155328]

用法二

open fun nextLong(until: Long): Long
fun nextLong(until: Long): Long

从随机数生成器中获取小于指定 until 界限的下一个随机非负 Long

生成 Long 随机值均匀分布在 0(包括)和指定的 until 边界(不包括)之间。

例子:

import kotlin.math.sin
import kotlin.random.Random
import kotlin.test.assertTrue

fun main(args: Array<String>) {
//sampleStart
val fileSize = Random.nextLong(until = 1_099_511_627_776)
println("A file of $fileSize bytes fits on a 1TB storage.")
val long = Random.nextLong(Int.MAX_VALUE + 1L, Long.MAX_VALUE)
println("Number $long doesn't fit in an Int.")
//sampleEnd
}

输出:

A file of 269440383149 bytes fits on a 1TB storage.
Number 159766089691291008 doesn't fit in an Int.

参数

until- 必须是正的。

异常

IllegalArgumentException- 如果直到是负数或零。

用法三

open fun nextLong(from: Long, until: Long): Long
fun nextLong(from: Long, until: Long): Long

从指定范围内的随机数生成器中获取下一个随机Long

生成在指定的from(包括)和until(不包括)边界之间均匀分布的Long 随机值。

例子:

import kotlin.math.sin
import kotlin.random.Random
import kotlin.test.assertTrue

fun main(args: Array<String>) {
//sampleStart
val fileSize = Random.nextLong(until = 1_099_511_627_776)
println("A file of $fileSize bytes fits on a 1TB storage.")
val long = Random.nextLong(Int.MAX_VALUE + 1L, Long.MAX_VALUE)
println("Number $long doesn't fit in an Int.")
//sampleEnd
}

输出:

A file of 344499731210 bytes fits on a 1TB storage.
Number 4633785139266924870 doesn't fit in an Int.

异常

IllegalArgumentException- 如果大于或等于直到.