Функция asByteArray
Функция asByteArray преобразует массив чисел
в массив байт. Применяется к массивам числовых типов
IntArray, ShortArray, LongArray,
FloatArray, DoubleArray.
Результат возвращается в виде ByteArray.
Синтаксис
fun IntArray.asByteArray(): ByteArray
fun ShortArray.asByteArray(): ByteArray
fun LongArray.asByteArray(): ByteArray
fun FloatArray.asByteArray(): ByteArray
fun DoubleArray.asByteArray(): ByteArray
Пример
Преобразуем массив целых чисел IntArray
в массив байт:
val intArr = intArrayOf(1, 2, 3, 4, 5)
val byteArr = intArr.asByteArray()
println(byteArr.contentToString())
Результат выполнения кода:
ByteArray [1, 0, 0, 0, 2, 0, 0, 0, 3, 0, 0, 0, 4, 0, 0, 0, 5, 0, 0, 0]
Пример
Преобразуем массив чисел с плавающей точкой
DoubleArray в массив байт:
val doubleArr = doubleArrayOf(1.5, 2.8, 3.1)
val byteArr = doubleArr.asByteArray()
println(byteArr.contentToString())
Результат выполнения кода:
ByteArray [0, 0, 0, 0, 0, 0, -8, 63, 0, 0, 0, 0, 0, 0, 12, 64, 0, 0, 0, 0, 0, 0, 8, 64]
Пример
Преобразуем массив коротких целых чисел
ShortArray в массив байт:
val shortArr = shortArrayOf(100, 200, 300)
val byteArr = shortArr.asByteArray()
println(byteArr.contentToString())
Результат выполнения кода:
ByteArray [100, 0, -56, 0, 44, 1]
Примечание
Функция asByteArray выполняет прямое
преобразование внутреннего представления чисел
в последовательность байт. Результат зависит
от порядка байт (endianness) платформы.
На большинстве современных систем используется
порядок байт от младшего к старшему (little-endian).
Смотрите также
-
функцию
toByteArray,
которая преобразует отдельные числа в массив байт -
функцию
toIntArray,
которая преобразует массив байт в массив целых чисел -
функцию
asIntArray,
которая преобразует массив байт в массив целых чисел -
функцию
toShortArray,
которая преобразует массив байт в массив коротких целых чисел