我不确定为什么下面的例子会给出缓冲区溢出异常。希望有人能解释原因,以及我如何正确地做到这一点。
就这么简单:
ByteBuffer bf = ByteBuffer.allocate(4);
bf.order(ByteOrder.BIG_ENDIAN);
bf.putInt(8);
bf.putInt(7); // Throws exception
目标:[0,0,8,7]
提前致谢!
最佳答案
int 的长度为 4 个字节,因此您应该将 4 乘以需要存储在 ByteBuffer 中的 int 数。
关于java - 为什么字节缓冲区在缓冲区未满时给出缓冲区溢出异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23696799/