我有一个java字符串,我必须将其转换为字节,但问题是字节由于其范围而不允许这样做。我该怎么办。 ?
String num = "FFFF";
答案 0 :(得分:1)
字节具有8位,因此值范围为< -128,127>。或< 0x00,0xFF>所以你不能对0xFFFF进行编码,如果它将整数(65535)表示为不适合的字节cos。
但是,如果它表示短0xFFFF表示-1(如果已签名)可转换为字节。代码如下所示:
String num = "FFFF";
int n = Integer.parseInt(num,16);
System.out.println("int:"+n);
byte bn = (byte)n;
System.out.println("byte: "+bn);
它会像这样打印出来:
int:65535
byte: -1