Java 기초 - Overflow

2020. 5. 28. 19:24·JAVA/JAVA 기초

 

package com.kh.variable;

public class D_Overflow {
	
	public void overflow() {
		// byte 자료형의 변수 저장 가능한 값 범위 : -128 ~ 127 총 256
		
		//byte bNum = 128; // 코딩하는 동안 bin이라는 폴더에 컴파일이 계속 진행되고 있는데 빨간줄이 뜬다는 것은 '컴파일 오류' 라고 부른다.
		
		byte bNum = 127; // -128 -127 -126 ..... 126 127 -128 : overflow  
		
		bNum++; // bNum에 담긴 값에 +1 증가 시키겠다. -> -128이 나오는 이유는 위처럼 연결되어 있는 구조이기 때문에 (overflow)
		bNum++;
		System.out.println("bNum : " + bNum);
		
		// int형 저장 가능 값 범위 : -21억xxx  ~ 21억xxx
		
		int num1 = 1000000; //100만
		int num2 = 700000; //70만

		//int result = num1 * num2;
		
		//long result = num1 * num2; // 아싸리 곱셉연산 하는 순간 int형 값이기 때문에 이미 overflow가 발생
		long result = (long)num1 * /*(long)*/num2; //강제형변환이 연산보다 우선순위. 따라서 long형으로 변환됨
		
		System.out.println("result : " + result);
		
		result = 10;
		
	}

}

Point

Overflow : 변수 타입의 저장 범위를 넘어서는 것.

'JAVA > JAVA 기초' 카테고리의 다른 글

JAVA 기초 - Printf  (0) 2020.05.29
JAVA 기초 - 상수(Constant)  (0) 2020.05.28
Java 기초- 형변환 (Type Casting)  (0) 2020.05.28
JAVA 기초 - Scanner (Java User Input)  (0) 2020.05.28
JAVA 기초 - Variable (변수)  (0) 2020.05.25
'JAVA/JAVA 기초' 카테고리의 다른 글
  • JAVA 기초 - Printf
  • JAVA 기초 - 상수(Constant)
  • Java 기초- 형변환 (Type Casting)
  • JAVA 기초 - Scanner (Java User Input)
꿀표
꿀표
양봉업자
  • 꿀표
    꿀로그
    꿀표
  • 전체
    오늘
    어제
    • 분류 전체보기 (82)
      • 인디해커 (0)
      • AI (0)
      • 프론트엔드 (34)
        • Javascript (17)
        • React (9)
        • Git (2)
        • Web Env (4)
        • Typescript (1)
        • 웹접근성 (1)
        • 상태관리 (0)
      • CS (8)
        • Network (3)
        • 알고리즘 (5)
      • 글쓰기 (3)
        • 생각 (2)
        • 서적 (1)
      • JAVA (37)
        • JAVA 기초 (22)
        • JSP (15)
  • 블로그 메뉴

    • 방명록
  • 인기 글

  • 태그

    알고리즘
    구명보트
    greedy
    cross browsing
    js
    그리디
    프로그래머스
    react
    network
    javascript
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.0
꿀표
Java 기초 - Overflow
상단으로

티스토리툴바