我不确定为什么以下示例会给出缓冲区溢出异常。希望有人可以解释原因,以及我如何正确地做到这一点。
这很简单:
ByteBuffer bf = ByteBuffer.allocate(4);
bf.order(ByteOrder.BIG_ENDIAN);
bf.putInt(8);
bf.putInt(7); // Throws exception
目标:[0,0,8,7]
提前致谢!
答案 0 :(得分:7)
int是4个字节长,所以你应该将4乘以你需要存储在ByteBuffer中的int数。
答案 1 :(得分:1)