我很难过,我需要一些新鲜的眼睛,我不知道为什么这段代码会这样做。
String string = new String(new char[] {(char) 0x01, (char) 0x02, ... ,(char) 0xFC});
输出是应该一直到最后一个数字(0xFC)它返回-4, 我知道它的十六进制值,但如果我用252的十进制值做同样的事情,它也会给我一个负数。我希望这只是一个简单的解决方案,而我却看不到它。
提前致谢。
答案 0 :(得分:150)
字符串到char数组就像
一样简单String str = "someString";
char[] charArray = str.toCharArray();
你能解释一下你想要做些什么吗?
*更新*
如果我理解你的新评论,你可以使用字节数组并提供示例。
byte[] bytes = ByteBuffer.allocate(4).putInt(1695609641).array();
for (byte b : bytes) {
System.out.format("0x%x ", b);
}
使用以下输出
0x65 0x10 0xf3 0x29