gpt4 book ai didi

java - ByteBuffer 索引减一

转载 作者:行者123 更新时间:2023-11-30 04:12:57 30 4
gpt4 key购买 nike

所以我试图弄清楚为什么当我插入/放入 ByteBuffer 时索引总是比应有的大 1。例如:

public static void main(String[] args) throws Exception
{
byte[] memory = new byte[10]; // 3MB memory
ByteBuffer byteBuffer = ByteBuffer.wrap(memory);

char character = 'G';

byteBuffer.putChar(0, character); // 71 at index 1
byteBuffer.putChar(5, character); // 71 at index 6
byteBuffer.putChar(3, character); // 71 at index 4

for(Byte myByte : byteBuffer.array())
{
System.out.println(myByte.byteValue());
}
}

如何将其插入到我想要的索引中?

最佳答案

该函数的文档指出:

Writes two bytes containing the given char value, in the current byte order, into this buffer at the given index.

听起来您有一个大端字节顺序,因此您期望看到的值被写入第二个位置(可能在第一个位置有一个 0 字节)。

您应该使用等效的 put 方法来代替,该方法写入单个字节。

关于java - ByteBuffer 索引减一,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19172394/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com