我有一个长度为4的字节数组
byte[] h = new byte[4];
h[0] = 0x13;
h[1]=(byte)0xBF;
h[2]=(byte)0x71;
h[3]=(byte)0xA8;
这是一个纬度值(实际值是33.1313576) 我将其转换为浮动,并附上以下声明:
ByteBuffer.wrap(h).getFloat()
输出为4.8327252E-27
答案 0 :(得分:2)
你错了。根据Java和this online calculator,33.1313576f作为float
的字节表示为0x42048683。
你实际拥有的不是浮点数,它是一个整数,需要按1/1000000或其他任何比例缩放。