English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Integer overflow를 확인하려면 추가된 정수 결과를 Integer.MAX_VALUE와 확인해야 합니다. 여기서 Integer.MAX_VALUE는 Java의 정수 최대값입니다.
정수를 추가하고 Integer.MAX_VALUE보다 합이 크면 예외를 발생시키는 예제를 보겠습니다.
public class Demo { public static void main(String[] args) { int a = 9897988; int b = 8798798; System.out.println("Value1: "+a); System.out.println("Value2: "+b); long sum = (long)a + (long)b; if (sum > Integer.MAX_VALUE) { throw new ArithmeticException("정수 부호 오류!"); } //총 합을 표시합니다 System.out.println("합: "+(int)sum); } }
출력 결과
값1: 9897988 값2: 8798798 합: 18696786
위의 예제에서는 다음 두 정수를 사용했습니다.
int val1 = 9897988; int val2 = 8798798;
지금, 우리는 그것을 프로젝션하고 long에 추가할 것입니다.
long sum = (long)val1 + (long)val2;
결과가 최대값보다 크면 예외를 발생시킵니다.
If (sum > Integer.MAX_VALUE) { throw new ArithmeticException("Overflow!"); }