Spec-Zone.ru › Kotlin 2

putUuid

kotlin-stdlib/kotlin.uuid/putUuid

Начиная с Kotlin: 2.4

@IgnorableReturnValue
fun ByteBuffer.putUuid(uuid: Uuid): ByteBuffer

Записывает указанное значение uuid в буфер с текущей позиции.

Эта функция записывает в буфер по текущей позиции 16 байт, содержащих заданное значение uuid. В результате позиция буфера увеличивается на 16.

Обратите внимание, что эта функция игнорирует порядок байтов буфера. 16 байт записываются последовательно: каждый байт представляет следующие 8 бит uuid — от первого байта, представляющего 8 наиболее значащих бит, до последнего байта, представляющего 8 наименее значащих бит.

Эта функция эквивалентна:

byteBuffer.put(uuid.toByteArray())

Возвращает

Этот байтовый буфер.

Параметры

uuid

Значение uuid для записи.

См. также

Uuid.toByteArray

Исключения

BufferOverflowException

Если в буфере недостаточно места для 16 байт.

ReadOnlyBufferException

Если этот буфер доступен только для чтения.

Примеры

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
}

@IgnorableReturnValue
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)
}

за исключением того, что эта функция сначала проверяет, достаточно ли места в буфере.

Возвращает

Этот байтовый буфер.

Параметры

index

Индекс, по которому нужно записать указанное значение uuid.

uuid

Значение uuid для записи.

См. также

Uuid.toByteArray

Исключения

IndexOutOfBoundsException

Если индекс отрицателен или index + 15 не меньше предела этого буфера.

ReadOnlyBufferException

Если этот буфер доступен только для чтения.

Примеры

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

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API