Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/380.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java:parseByte到一个字节,反之亦然,返回不同的值_Java_Parsing_Binary_Byte - Fatal编程技术网

Java:parseByte到一个字节,反之亦然,返回不同的值

Java:parseByte到一个字节,反之亦然,返回不同的值,java,parsing,binary,byte,Java,Parsing,Binary,Byte,当我使用 small =Byte.parseByte("01101001",2) 然后用这个: String binary = Integer.toBinaryString(small & 0xFF); binarynumber= Integer.parseInt(binary); 它们给出了不同的值。二进制数=1101001 领先的0发生了什么 -编辑- 我想我明白了,谢谢你的回复 为什么要有前导零?对于Byte.parseByte(“01101001”,2)和Byte.parse

当我使用

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)
,您如何期望不同的结果?两者都返回相同的
字节

这同样适用于
Integer.parseInt()

如果要在输出中包含前导零,则必须使用格式字符串。

始终返回一个
整数
,即十进制表示法,该表示法从来没有前导零

返回一个整数对象,该对象包含从 使用第二个字符给定的基数进行分析时指定的字符串 论点第一个参数被解释为表示带符号的 第二个参数指定的基数中的整数,与 参数被提供给parseInt(java.lang.String,int) 方法。结果是一个表示整数的整数对象 由字符串指定的值


整数的前导0总是被删除。4==0000000000000 4,但表示为4。