2011-08-01 3 views
2

Javaの整数のparseInt私は問題次のエラーいる

私は整数にいくつかのバイナリ文字列を変換したい:

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

が、私は例外を以下ます。どうして?

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

答えて

7

あなたの番号(4293036538)は(-2,147,483,648〜2,147,483,647の範囲を持っている)署名のintに収まるには大きすぎます。

代わりに長い文字を使用してください。これはより広い範囲を有する。

1

バイナリ数が整数サイズを超えました。ザッツはなぜあなたのこの例外を取得することは

3

どの程度

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

これは、7ヶ月となっているが、ターゲットの答えが記載されていません。また、この質問は検索エンジンでもリードしています。上記の主題は真です。次のように使用してください:

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

eargb =(int)Long.parseLong(al + re + gre + blu, 2); 
関連する問題