【发布时间】:2012-03-18 04:13:07
【问题描述】:
我需要从 ByteBuffer 中存储的字节中提取两个整数值(小端序)
ByteBuffer bb = ByteBuffer.wrap(inputBuffer);
bb.order(ByteOrder.LITTLE_ENDIAN);
我需要从 ByteBuffer 中的任何字节获取的值是:
长度 = 低位半字节的整数值
频率 = 高位半字节的整数值
目前我正在使用此代码提取低阶 nybble:
length = bb.getInt(index) & 0xf;
这似乎工作得很好。然而,我似乎无法正确解释高阶 nybble。
我对位移或掩码感到有些困惑,我认为我需要执行此操作,任何建议都会非常有帮助。
非常感谢!!
【问题讨论】:
-
请发布您尝试过的代码并准确描述它的问题所在。
标签: java byte mask bytebuffer bit-shift