Random
abstract class Random
An abstract class that is implemented by random number generator algorithms.
The companion object Random.Default is the default instance of Random.
To get a seeded instance of random generator use Random function.
import kotlin.random.Random
import kotlin.test.assertTrue
fun main(args: Array<String>) {
//sampleStart
val randomValues = List(10) { Random.nextInt(0, 100) }
// prints new sequence every time
println(randomValues)
val nextValues = List(10) { Random.nextInt(0, 100) }
println(nextValues)
println("randomValues != nextValues is ${randomValues != nextValues}") // true
//sampleEnd
}
Types
Constructors
<init>
An abstract class that is implemented by random number generator algorithms.
Random()
Functions
nextBoolean
Gets the next random Boolean value.
open fun nextBoolean(): Boolean
nextBytes
Fills a subrange of the specified byte array starting from fromIndex inclusive and ending toIndex exclusive with random bytes.
Fills the specified byte array with random bytes and returns it.
nextDouble
Gets the next random Double value uniformly distributed between 0 (inclusive) and 1 (exclusive).
open fun nextDouble(): Double
Gets the next random non-negative Double
from the random number generator less than the specified until bound.
open fun nextDouble(until: Double): Double
Gets the next random Double
from the random number generator in the specified range.
open fun nextDouble(from: Double, until: Double): Double
nextFloat
Gets the next random Float value uniformly distributed between 0 (inclusive) and 1 (exclusive).
open fun nextFloat(): Float
nextInt
Gets the next random Int
from the random number generator.
open fun nextInt(): Int
Gets the next random non-negative Int
from the random number generator less than the specified until bound.
open fun nextInt(until: Int): Int
Gets the next random Int
from the random number generator in the specified range.
open fun nextInt(from: Int, until: Int): Int
nextLong
Gets the next random Long
from the random number generator.
open fun nextLong(): Long
Gets the next random non-negative Long
from the random number generator less than the specified until bound.
open fun nextLong(until: Long): Long
Gets the next random Long
from the random number generator in the specified range.
open fun nextLong(from: Long, until: Long): Long
Companion Object Properties
Companion
val Companion: Companion
Companion Object Functions
nextBoolean
Gets the next random Boolean value.
fun nextBoolean(): Boolean
nextBytes
Fills the specified byte array with random bytes and returns it.
nextDouble
Gets the next random Double value uniformly distributed between 0 (inclusive) and 1 (exclusive).
fun nextDouble(): Double
Gets the next random non-negative Double
from the random number generator less than the specified until bound.
fun nextDouble(until: Double): Double
Gets the next random Double
from the random number generator in the specified range.
fun nextDouble(from: Double, until: Double): Double
nextFloat
Gets the next random Float value uniformly distributed between 0 (inclusive) and 1 (exclusive).
fun nextFloat(): Float
nextInt
Gets the next random Int
from the random number generator.
fun nextInt(): Int
Gets the next random non-negative Int
from the random number generator less than the specified until bound.
fun nextInt(until: Int): Int
Gets the next random Int
from the random number generator in the specified range.
fun nextInt(from: Int, until: Int): Int
nextLong
Gets the next random Long
from the random number generator.
fun nextLong(): Long
Gets the next random non-negative Long
from the random number generator less than the specified until bound.
fun nextLong(until: Long): Long
Gets the next random Long
from the random number generator in the specified range.
fun nextLong(from: Long, until: Long): Long
Extension Functions
asJavaRandom
Creates a java.util.Random instance that uses the specified Kotlin Random generator as a randomness source.
nextUBytes
Fills the specified unsigned byte array with random bytes and returns it.
fun Random.nextUBytes(array: UByteArray): UByteArray
Creates an unsigned byte array of the specified size, filled with random bytes.
fun Random.nextUBytes(size: Int): UByteArray
Fills a subrange of the specified UByte
array starting from fromIndex inclusive and ending toIndex exclusive with random UBytes.
fun Random.nextUBytes(
array: UByteArray,
fromIndex: Int = 0,
toIndex: Int = array.size
): UByteArray
nextUInt
Gets the next random UInt from the random number generator in the specified range.
nextULong
Gets the next random ULong from the random number generator in the specified range.
Gets the next random ULong from the random number generator in the specified range.
fun Random.nextULong(range: ULongRange): ULong