java里用Integer.parseInt()把负数的二进制转化十进制会抛异常怎么办,有什么办法能转化?

如题所述

Integer.parseInt(String s, int radix) 这个方法本身就不能转负数,只能转正数。如果你想转换-1,那只能是 Integer.parseInt("-1",2),同理,转-123,只能 Integer.parseInt("-1111011",2),即在本身正数对应2进制之前加一个“-”号。

对于“已知一个负整数的二进制数,求这个数的十进制数”这类问题的话,那么方法如下:
对字符串操作,取反码,然后再按照上文所述方式转换,就可以得到所求负数+1,再-1,就可以得到所求负数

记得给分呦,亲~~~~
温馨提示:答案为网友推荐,仅供参考
第1个回答  2015-08-07
数字无法转换,是1打的多了吧,少打几个1试试,可能是超出范围了追问

是越界了,连-1的二进制表示形式转十进制都会越界

相似回答