2017-04-07 14 views
0

私はベトナム人ですので、私の英語は良くありません。私を共感してください。前もって感謝します。 私は質問があります。 整数の値を入力しますが、intのサイズを超えている場合は入力します。 例:入力= a = 1323544875154846543513521 エラーをキャッチするにはどうすればよいですか? 入力してから値を確認する必要がありますか?整数より大きい値

答えて

0

シンプル:intを使用しないでください。BigIntegerを使用してください。

数字自動入力を持つ他のJVM言語、つまり実行時の値(Clojureなど)に応じて数値タイプを自動的に変更したい場合もあります。

0

私は整数値を入力しますが、intのサイズを超えている場合は入力します。 例:私は= 1323544875154846543513521を入力するので、エラーをキャッチする方法は?

System.out.println(Integer.MAX_VALUE+1); // anymore than the max will wrap around, value printed = -2147483648 
System.out.println(Integer.MIN_VALUE-1); // if less than the min it will also wrap around, value printed = 2147483647 

あなたは、オーバーフロー/アンダーフローの例外を受信したい場合は、Math.toIntExact(long value)を使用することができます。

また、サイズに制限のないBigIntegerまたはBigDecimalを使用することもできます(RAMは上限です)。

関連する問題