isoomni
디벨로폴리
isoomni
전체 방문자
오늘
어제
  • Category (47)
    • 취업 (0)
    • 대외활동 (4)
    • 알고리즘 (16)
      • 알고리즘 (11)
      • 코딩테스트 (3)
    • STUDY (15)
      • 서버 (9)
      • 안드로이드 (2)
      • 기타 (4)
    • LANGUAGE (9)
      • Java (9)
      • C (0)

블로그 메뉴

  • 홈
  • 글쓰기
  • 관리

공지사항

인기 글

태그

  • Tech Interview
  • 라이징캠프
  • 너도개발자할수있어
  • AWS 서버 구축
  • 자바
  • 컴공선배후기
  • Layout 바꾸기
  • 기술면접
  • 라이징캠프후기
  • Unmanaged Language
  • Quick DBD
  • Unmanaged
  • 라이징프로그래머
  • Java
  • 알기쉬운 알고리즘
  • 컴공선배
  • Managed Language
  • 질문
  • 기술인터뷰
  • 서버

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
isoomni

디벨로폴리

LANGUAGE/Java

[Java] 1-5. 자동 타입 변환 / 강제 타입 변환

2021. 3. 26. 22:28

자동 타입 변환

1. 작은 타입은 큰 타입으로 자동 변환 된다.

    - 컴파일러에 의해 이루어짐.

 

2. 치환문(=)이나 수식 내에서 타입이 일치하지 않을 때

long m = 25;     // 25는 int 타입이다. 25가 long 타입으로 자동 변환되는 사례

int 타입인 25가 -> long 타입으로 자동 변환 된다.

int는 4바이트, long은 8 바이트이므로 자동 변환.

 

double d = 3.14 * 10;

실수 연산을 하기 위해 10이 10.0의 double 타입으로 자동 변환되는 경우이다.

다른 피연산자 3.14가 실수 double 타입이기 때문에 상위 타입에 맞추어 변환되었다.

 


강제 타입 변환

1. 자동 타입 변환이 안 되는 경우: 큰 타입이 작은 타입으로 변환할 때

int n = 300;
byte b = n;           // 컴파일 오류. 4byte인 int 타입은 byte로 자동 변환 될 수 없다.

2. 강제 타입 변환은 개발자의 필요에 의해 강제로 타입 변환을 지시하는 것이다.

 

* 강제 변환은 값 손실의 우려가 있다.

byte b = (byte)n;
double d = 1.9;
int n = (int)d;      // n = 1 , 강제 타입 변환으로 소수점 이하 0.9 손실

 

'LANGUAGE > Java' 카테고리의 다른 글

[Java / 2. 조건문과 반복문 ] 1. 세 가지 제어 구조  (0) 2021.03.27
[Java] 1-6. 입력 System.in  (0) 2021.03.26
[Java] 1-4. 상수의 선언  (0) 2021.03.26
[Java] 1-3. 정수, 실수, 문자, 문자열 (String) 리터럴(Literal)  (0) 2021.03.26
[Java] 1-2. Java 의 데이터 타입  (0) 2021.03.26
    'LANGUAGE/Java' 카테고리의 다른 글
    • [Java / 2. 조건문과 반복문 ] 1. 세 가지 제어 구조
    • [Java] 1-6. 입력 System.in
    • [Java] 1-4. 상수의 선언
    • [Java] 1-3. 정수, 실수, 문자, 문자열 (String) 리터럴(Literal)
    isoomni
    isoomni
    개발을 공부하고 일상을 기록합니다.

    티스토리툴바