English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Integerのオーバーフローを確認するには、Integer.MAX_VALUEを確認する必要があります。それはJavaの整数の最大値です。
整数を追加し、合計がInteger.MAX_VALUEを超えた場合に例外を発生させる例を見てみましょう。
public class Demo { public static void main(String[] args) { int val1 = 9898989; int val2 = 6789054; System.out.println("値1: "+val1); System.out.println("値2: "+val2); long sum = (long)val1 + (long)val2; if (sum > Integer.MAX_VALUE) { throw new ArithmeticException("Overflow!"); } //合計を表示 System.out.println("合計: "+(int)sum); } }
出力結果
値1: 9898989 値2: 6789054 合計: 16688043
上記の例では、以下の2つの整数を使用しています-
int val1 = 9898989; int val2 = 6789054;
今、投射してそれをlongに追加する。
long sum = (long)val1 + (long)val2;
結果が最大値を超えた場合、例外を発生させる。
if (sum > Integer.MAX_VALUE) { throw new ArithmeticException("Overflow!"); }