Java String to Integer Conversion抛出NumberFormatException

时间:2014-02-07 20:40:47

标签: java

我想将一个字符串(二进制数字)转换为Integer,如下所示:

Integer.parseInt("011000010110")

我总是得到NumberFormatException。数字位数是否过高?

2 个答案:

答案 0 :(得分:8)

是的,字符串"011000010110"大约为110亿,高于可表示的最大值intInteger.MAX_VALUE, 2,147,483,647。尝试

Long.parseLong("011000010110")

或者,如果您将其视为二进制,则将基数2传递给parseInt

Integer.parseInt("011000010110", 2)

答案 1 :(得分:0)

所有Java的数字类都是基数10.但是,我在这里找到了这两个选项:

working with binary numbers in java

BitSet类,或将int声明为二进制数(Java 7+)的方法。后者可能不适合您,具体取决于您获得这些数字的方式。