본문 바로가기
JAVA

오버/언더플로우

by 융디's 2024. 3. 30.
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

'JAVA' 카테고리의 다른 글

비트 연산자  (0) 2024.03.30
기본 타입 변환  (0) 2024.03.30
산술연산자  (0) 2024.03.30
비교/논리연산자  (0) 2024.03.30
타입  (0) 2024.03.30