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

2025-03-24 03:43:21
推荐回答(2个)
回答1:

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

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

记得给分呦,亲~~~~

回答2:

数字无法转换,是1打的多了吧,少打几个1试试,可能是超出范围了