Java Byte浮动

时间:2018-02-22 07:51:28

标签: java floating-point byte

我尊重2个字节,我想将它们表示为float。 我知道方法

float f = ByteBuffer.wrap(weight).order(ByteOrder.LITTLE_ENDIAN).getFloat();

但是这个方法只适用于4字节数组。 有没有办法只为2字节?我想在数组权重中添加两个0字节以获得数组中的4字节,但结果远非我期待的结果。

byte[] Data = characteristic.getValue();
byte[] weight = new byte[4];
weight[3] = Data[2];
weight[2] = Data[1];
weight[1] = 0;
weight[0] = 0;
float f = ByteBuffer.wrap(weight).order(ByteOrder.LITTLE_ENDIAN).getFloat();

此外,我必须交换我收到的两个字节,这就是我改变位置的原因。我也试过

    weight[0] = Data[2];
    weight[1] = Data[1];
    weight[2] = 0;
    weight[3] = 0;

但它也不合适。 THX

0 个答案:

没有答案