我想一个字符串(二进制数字)转换为一个Integer
这样的:Java的字符串整数转换抛出NumberFormatException的
Integer.parseInt("011000010110")
我总是得到一个NumberFormatException
。数字的数量是否过高?
我想一个字符串(二进制数字)转换为一个Integer
这样的:Java的字符串整数转换抛出NumberFormatException的
Integer.parseInt("011000010110")
我总是得到一个NumberFormatException
。数字的数量是否过高?
是的,字符串"011000010110"
约为110亿,高于最大可表示的int
,。尝试
Long.parseLong("011000010110")
或者,如果你的意思是二进制,经过2的基数parseInt
:
Integer.parseInt("011000010110", 2)
所有Java的数类是基本10.然而,我发现这两个选项:
working with binary numbers in java
位集类,或者声明一个int为二进制数(爪哇7+)的方式。后者可能不适合你,这取决于你如何获得这些数字。
它可能看起来像二进制,这将被解释为十进制(和太高)。 – pamphlet