このコードがスローするのはなぜNumberFormatExceptionですか?
int a = Integer.parseInt("1111111111111111111111111111111111111111");
intそのための値を取得する方法はString?
このコードがスローするのはなぜNumberFormatExceptionですか?
int a = Integer.parseInt("1111111111111111111111111111111111111111");
intそのための値を取得する方法はString?
int解析しようとしている値が、許容される最大値 ( Integer.MAX_VALUE、または2147483647)よりもはるかに大きいため、 aNumberFormatExceptionがスローされます。long許容される最大値( Long.MAX_VALUE、または)よりも大きいため、その値を格納するに9223372036854775807Lは が必要です。BigInteger
BigInteger veryBig = new BigInteger("1111111111111111111111111111111111111111");
不変の任意精度の整数。
これは、 の数値文字列がかなり大きいためintです。おそらくこれにはBigInteger.
その文字列に整数値はありません。そのため、例外をスローしています。整数の最大値は 2147483647 であり、あなたの値は明らかにそれを超えています。