Java Integer parseInt错误

时间:2011-08-01 10:03:12

标签: java binary integer parseint

我有以下问题:

我想将一些二进制字符串转换为整数:

eargb = Integer.parseInt(al + re + gre + blu, 2);

但我得到以下异常。为什么呢?

java.lang.NumberFormatException: For input string: "11111111111000101000100111111010"

4 个答案:

答案 0 :(得分:7)

你的号码(4,293,036,538)太大而不适合签名的int(范围为-2,147,483,648到2,147,483,647)。

尝试使用long来代替。这个范围更广。

答案 1 :(得分:3)

怎么样

long eargb = Long.parseLong(al + re + gre + blu, 2);

答案 2 :(得分:1)

您的二进制数超过了整数。这就是为什么你得到这个例外

答案 3 :(得分:0)

已经过了7个月,但目标答案尚未描述。这个问题在搜索引擎中也是领先​​的。上述主题是真实的。你应该使用如下:

(int)Long.parseLong("11111111111000101000100111111010",2)

eargb =(int)Long.parseLong( al + re + gre + blu, 2);