0

私の Java コードには string9632580147があり、それを int に変換すると、次のコードを使用します。

            try{  
                sNumberInt = Integer.parseInt(sNumber);  
            } catch(NumberFormatException nfe) {  
                Log.d("NUMBER", nfe.getMessage());
                return;  
            } 

それはキャッチブロックに入りますInvalid int: "9632580147"...これを修正する方法を知っている人はいますか?

ありがとう

4

5 に答える 5

5

入力するとき

int sNumber = 9632580147;

コードに追加すると、コンパイラは次のことを通知します。

int 型のリテラル 9632580147 は範囲外です

その理由は、数値が大きすぎて int に収まらないためです。代わりに long を使用してください。

于 2013-11-05T18:44:57.950 に答える
2

Java の整数の最大値は、2147483647入力9632580147が大きい間です。代わりに、long データ型を使用します。

long sNumberLong = Long.parseLong(sNumber);
于 2013-11-05T18:44:14.127 に答える