字符串到char数组Java

Cod*_*rry 54 java arrays

我对此感到困惑,我需要一些新鲜的眼睛,我不知道为什么这段代码会这样做.

String string = new String(new char[] {(char) 0x01, (char) 0x02, ... ,(char) 0xFC});
Run Code Online (Sandbox Code Playgroud)

输出是它应该一直到最后一个数字(0xFC)它返回-4,我知道它是一个十六进制值,但如果我用252做十六进制值,它也给我一个负数.我希望这只是一个简单的解决方案,而我却看不到它.

提前谢谢.

Kev*_*vin 154

字符串到char数组就像

String str = "someString"; 
char[] charArray = str.toCharArray();
Run Code Online (Sandbox Code Playgroud)

你能解释一下你想做什么吗?

*更新*

如果我理解你的新评论,你可以使用字节数组并提供示例.

byte[] bytes = ByteBuffer.allocate(4).putInt(1695609641).array();

for (byte b : bytes) {
   System.out.format("0x%x ", b);
}
Run Code Online (Sandbox Code Playgroud)

具有以下输出

0x65 0x10 0xf3 0x29

  • 上面的一个很好的快捷方式是"string".toCharArray().它可以为您节省一行代码. (3认同)