时间:2019-08-05 19:48:52

标签: java arrays byte

我找到了这种方法:

private static int getInt16(ByteBuffer input) {
    return ((input.get() & 0xFF) << 8) | (input.get() & 0xFF);
}

input.get() & 0xFF的目的是什么?与input.get()一样吗?

1 个答案:

答案 0 :(得分:1)

这是从input中提取字节(大小为8位)并将它们组合成Int16 s,这是该方法返回的结果。 & 0xFF确保未对字节进行符号扩展(这可能是不必要的,但不会造成伤害)。