put Uuid
Начиная с Kotlin: 2.4
fun ByteBuffer.putUuid(uuid: Uuid): ByteBuffer
Записывает указанное значение uuid в буфер с текущей позиции.
Эта функция записывает в буфер по текущей позиции 16 байт, содержащих заданное значение uuid. В результате позиция буфера увеличивается на 16.
Обратите внимание, что эта функция игнорирует порядок байтов буфера. 16 байт записываются последовательно: каждый байт представляет следующие 8 бит uuid — от первого байта, представляющего 8 наиболее значащих бит, до последнего байта, представляющего 8 наименее значащих бит.
Эта функция эквивалентна:
byteBuffer.put(uuid.toByteArray())
Возвращает
Этот байтовый буфер.
Параметры
Значение uuid для записи.
См. также
Исключения
Если в буфере недостаточно места для 16 байт.
Если этот буфер доступен только для чтения.
Примеры
import kotlin.test.*
import kotlin.time.Instant
import kotlin.uuid.*
fun main() {
//sampleStart
val uuid = Uuid.parse("550e8400-e29b-41d4-a716-446655440000")
val bytes = ByteArray(16)
val buffer = java.nio.ByteBuffer.wrap(bytes)
buffer.putUuid(uuid)
// The written 16 bytes are exactly equal to the uuid bytes
println(bytes.contentEquals(uuid.toByteArray())) // true
//sampleEnd
}
fun ByteBuffer.putUuid(index: Int, uuid: Uuid): ByteBuffer
Записывает указанное значение uuid по заданному индексу.
Эта функция записывает в буфер по заданному индексу 16 байт, содержащих заданное значение uuid. Однако позиция буфера не обновляется.
Обратите внимание, что эта функция игнорирует порядок байтов буфера. 16 байт записываются последовательно: каждый байт представляет следующие 8 бит uuid — от первого байта, представляющего 8 наиболее значащих бит, до последнего байта, представляющего 8 наименее значащих бит.
Эта функция эквивалентна:
val bytes = uuid.toByteArray()
bytes.forEachIndexed { i, byte ->
byteBuffer.put(index + i, byte)
}
за исключением того, что эта функция сначала проверяет, достаточно ли места в буфере.
Возвращает
Этот байтовый буфер.
Параметры
Индекс, по которому нужно записать указанное значение uuid.
Значение uuid для записи.
См. также
Исключения
Если этот буфер доступен только для чтения.
Примеры
import kotlin.test.*
import kotlin.time.Instant
import kotlin.uuid.*
fun main() {
//sampleStart
val uuid = Uuid.parse("550e8400-e29b-41d4-a716-446655440000")
val bytes = ByteArray(20)
val buffer = java.nio.ByteBuffer.wrap(bytes)
buffer.putUuid(index = 2, uuid)
// The written 16 bytes are exactly equal to the uuid bytes
val writtenBytes = bytes.sliceArray(2..<18)
println(writtenBytes.contentEquals(uuid.toByteArray())) // true
//sampleEnd
}
© 2010–2026 JetBrains s.r.o. and Kotlin Programming Language contributors
Licensed under the Apache License, Version 2.0.
https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.uuid/put-uuid.html