gpt4 book ai didi

java - 将 ByteBuffer 与 FloatBuffer 结合起来

转载 作者:行者123 更新时间:2023-11-30 04:44:31 26 4
gpt4 key购买 nike

有没有结合 ByteBuffer 和 FloatBuffer 的好方法?例如,我获取 byte[] 数据,我需要将其转换为 float[] 数据,反之亦然:

byte[]float[] (java.lang.UnsupportedOperationException):

byte[] bytes = new bytes[N];
ByteBuffer.wrap(bytes).asFloatBuffer().array();

float[]byte[] (有效):

float[] floats = new float[N];
FloatBuffer floatBuffer = FloatBuffer.wrap(floats);
ByteBuffer byteBuffer = ByteBuffer.allocate(floatBuffer.capacity() * 4);
byteBuffer.asFloatBuffer().put(floats);
byte[] bytes = byteBuffer.array();

最佳答案

array()ByteBufferFloatBuffer可选操作,仅在支持时才支持Buffer 实际上是在具有适当类型的数组之上实现的。

当您不知道缓冲区的实际实现方式时,请使用 get 将缓冲区的内容读入数组。

关于java - 将 ByteBuffer 与 FloatBuffer 结合起来,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11385596/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com