将 ajava.nio.ByteBuffer a
转换为(新创建的)CharBuffer b
或char[] b
.
通过这样做,重要的是a[i] == b[i]
. 这意味着,不a[i]
和a[i+1]
一起构成一个值b[j]
,getChar(i)
会做什么,但值应该是“传播”的。
byte a[] = { 1,2,3, 125,126,127, -128,-127,-126 } // each a byte (which are signed)
char b[] = { 1,2,3, 125,126,127, 128, 129, 130 } // each a char (which are unsigned)
请注意,与byte:-128
具有相同(低 8 位)位char:128
。因此,我假设“最佳”解释就像我上面提到的那样,因为位是相同的。
之后我还需要反之亦然的翻译:获取char[]
或java.nio.CharBuffer
返回到java.nio.ByteBuffer
.