Integer.parseInt解析二进制字符串的一个小坑

今天做题用到了Integer.parseInt方法来将二进制字符串解析为Integer值,但出现了java.lang.NumberFormatException异常,我已经将字符串的长度限制为了32位,但仍出了这个异常,因此百思不得其解。

查阅资料发现这个方法解析二进制时,不能用符号位来表示正负,如果是负数,要显式的用“-”表示出来,如

	int a = Integer.parseInt("-000000000000000000000000000001", 2);//正确
	int b = Integer.parseInt("1000000000000000000000000000001", 2);//错误,报java.lang.NumberFormatException

你可能感兴趣的:(Java)