我有一个位掩码要存储在一个字节中,因为我只需要 8 位。当我创建它时,我将它作为一个字符串(我认为这样会更容易)然后我将它转换为一个字节Byte.parseByte(mask,2)
,但我发现它不适用于某些值:
String bits="10000001";
Byte.parseByte(bits,2);// throws a NFE
但如果我这样做:
byte b=(byte)0x81; //1000 0001
没有问题。
PS:我找到了解决方法,byte b=(byte)Integer.parseInt(bits, 2);
但无论如何我想知道为什么我不能将 8 位转换为一个字节