nextBytes

Common
JVM
JS
Native
1.0
fun nextBytes(array: ByteArray): ByteArray

Fills the specified byte array with random bytes and returns it.

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

fun main(args: Array<String>) {
//sampleStart
val bytes = ByteArray(4)
println(bytes.contentToString()) // [0, 0, 0, 0]

Random.nextBytes(bytes, 1, 3)
// second and third bytes are generated, rest unchanged
println(bytes.contentToString())

Random.nextBytes(bytes)
// all bytes are newly generated
println(bytes.contentToString())

val newBytes = Random.nextBytes(5)
// a new byte array filled with random values
println(newBytes.contentToString())
//sampleEnd
}

Return array filled with random bytes.

Common
JVM
JS
Native
1.0
fun nextBytes(size: Int): ByteArray

Creates a byte array of the specified size, filled with random bytes.

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

fun main(args: Array<String>) {
//sampleStart
val bytes = ByteArray(4)
println(bytes.contentToString()) // [0, 0, 0, 0]

Random.nextBytes(bytes, 1, 3)
// second and third bytes are generated, rest unchanged
println(bytes.contentToString())

Random.nextBytes(bytes)
// all bytes are newly generated
println(bytes.contentToString())

val newBytes = Random.nextBytes(5)
// a new byte array filled with random values
println(newBytes.contentToString())
//sampleEnd
}
Common
JVM
JS
Native
1.0
fun nextBytes(
    array: ByteArray,
    fromIndex: Int,
    toIndex: Int
): ByteArray

Fills a subrange of the specified byte array starting from fromIndex inclusive and ending toIndex exclusive with random bytes.

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

fun main(args: Array<String>) {
//sampleStart
val bytes = ByteArray(4)
println(bytes.contentToString()) // [0, 0, 0, 0]

Random.nextBytes(bytes, 1, 3)
// second and third bytes are generated, rest unchanged
println(bytes.contentToString())

Random.nextBytes(bytes)
// all bytes are newly generated
println(bytes.contentToString())

val newBytes = Random.nextBytes(5)
// a new byte array filled with random values
println(newBytes.contentToString())
//sampleEnd
}

Return array with the subrange filled with random bytes.