当我使用
small =Byte.parseByte("01101001",2)
然后使用:
String binary = Integer.toBinaryString(small & 0xFF);
binarynumber= Integer.parseInt(binary);
他们给出了不同的价值。二进制数= 1101001
前0发生了什么?
-编辑-
我想我想通了,谢谢大家的回答!
最佳答案
为什么要有一个前导零?您如何期望Byte.parseByte("01101001",2)
和Byte.parseByte("1101001",2)
的结果不同?两者都返回相同的byte
。Integer.parseInt()
同样。
如果要在输出中包含前导零,则必须使用格式字符串。