Java 整数 parseInt 错误

发布于 2024-11-27 04:40:00 字数 249 浏览 3 评论 0原文

我有以下问题:

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

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

但出现以下异常。为什么?

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

I have following problem:

I want to convert some Binary Strings to an integer:

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

but I get following exception. Why?

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

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

ㄖ落Θ余辉 2024-12-04 04:40:00

您的数字(4,293,036,538)太大,无法放入有符号整数(其范围为-2,147,483,648到2,147,483,647)。

尝试使用 long 代替。这个范围比较大。

Your number (4,293,036,538) is too large to fit in a signed int (which has a range of -2,147,483,648 to 2,147,483,647).

Try using a long instead. This has a larger range.

冷情妓 2024-12-04 04:40:00

怎么样

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

How about

long eargb = Long.parseLong(al + re + gre + blu, 2);
遗失的美好 2024-12-04 04:40:00

您的二进制数超出了整数大小。这就是为什么你会得到这个异常

Your binary number exceeded Integer size. Thats why your getting this exception

花心好男孩 2024-12-04 04:40:00

已经7个月了,但目标答案还没有描述。这个问题也在搜索引擎中处于领先地位。上述主题均属实。您应该按如下方式使用:

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

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

It has been 7 months but the target answer has not been described. Also this question is leading in search engines. The above mentioned subjects are true. You should use as follow:

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

eargb =(int)Long.parseLong( al + re + gre + blu, 2);
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文