如何将Int转换为无符号字节并返回
我需要将数字转换为无符号字节。该数字始终小于或等于255,因此它将适合一个字节。
我还需要将该字节转换回该数字。我将如何用Java做到这一点?我尝试了几种方法,但均无效果。这是我现在想要做的:
int size = 5;// Convert size int to binary
String sizeStr = Integer.toString(size);
byte binaryByte = Byte.valueOf(sizeStr);
现在将该字节转换回数字:
Byte test = new Byte(binaryByte);int msgSize = test.intValue();
显然,这是行不通的。由于某种原因,它总是将数字转换为65
。有什么建议?
回答:
字节始终用Java签名。但是,您可以通过将二进制与0xFF相乘来获得其无符号值:
int i = 234;byte b = (byte) i;
System.out.println(b); // -22
int i2 = b & 0xFF;
System.out.println(i2); // 234
以上是 如何将Int转换为无符号字节并返回 的全部内容, 来源链接: utcz.com/qa/414001.html