728x90
오버/언더플로우
@2024.03.12
산술 연산을 하다 보면 오버/언더플로우에 주의하면서 코딩을 하는 것이 중요하다.
발생 가능성이 있는 연산은 수행하기 전에 범위를 확인하거나, 예외 처리를 추가해서 해결해야 한다.
다양한 타입의 혀용값 범위
오버플로우
💡
변수가 특정 데이터 유형에서 허용되는 최댓값을 초과할 때 발생한다.
- 예시
int num1 = Interger.MAX_VALUE; //num1=2,147,483,647 num1 = num1 +1; // 오버플로우 발생 System.iut.println(num1);
- 출력 결과는 2,147,483,648이 아닌 -2,147,483,648 (최소값)
언더플로우
💡
변수가 특정 데이터 유형에서 허용되는 최솟값보다 작아질 때 발생한다.
- 예시
byte num2 = Byte.MIN_VALUE; //num2=-128 num2 = num2 - 1; // 언더플로우 발생 System.iut.println(num2);
- 출력 결과는 -129가 아닌 127 (최대값)
728x90