<Do it 자바 완전 정복> 2장 자료형
변수 선언 & 대입
-
자료형 변수명;
-
자료형 변수명 = 값;
변수명
-
영문 대소문자 & 한글
-
특수문자 : 밑줄(_), 달러($)
-
아라비아 숫자 (첫글자에는 불가)
-
예약어 X (class, public, int...)
생존기간
선언된 시점부터 자신이 소속된 중괄호 내에서만 생존 가능
자료형 종류
기본 자료형 | 참조 자료형 | ||
---|---|---|---|
참 & 거짓 | boolean | 객체 | 배열 |
정수 | byte | 클래스 | |
short | 인터페이스 | ||
int | |||
long | |||
실수 | float | ||
double | |||
문자 | char |
메모리 구조
자바의 메모리 구조는 3개의 영역으로 구분
기본자료형은 스택영역에서 변수에 실제 변수값 저장
참조 자료형은 힙 영역에 실제 값을 저장하고, 변수에는 값이 저장된 위치 값을 저장
기본 자료형
종류 | 자료형 | byte 크기 | 값 |
---|---|---|---|
부울대수 | boolean | 1 | true / false |
정수 | byte | 1 | -2^7 ~ 2^7-1 |
short | 2 | -2^15 ~ 2^15-1 | |
int | 4 | -2^31 ~ 2^31-1 | |
long | 8 | -2^63 ~ 2^63-1 | |
실수 | float | 4 | 가수 : 23 / 지수 : 8 |
double | 8 | 가수 : 52 / 지수 : 11 | |
문자 | char | 2 | 0 ~ 2^16-1 |
char형에 유니코드 값 대입시 -> '\u+16진수'
진수
-
2진수 -> 0b
-
8진수 -> 0
-
16진수 -> 0X
타입변환
-
변수 = (변수와 같은 자료형) 값
-
float -> F/f
-
long -> L/l
자동타입변환
업캐스팅 (큰 자료형 = 작은 자료형) 을 만족할 때, 자동적으로 타입 변환
double b = 3; // 3은 int형 이지만, 자동타입변환이 되어 double로 들어감
수동타입변환
다운캐스팅 (작은 자료형 = 큰 자료형) 을 만족할 때, 직접 명시를 통해 타입 변환
데이터 손실이 발생할 수 있다.
int a = (int)3.5
// 데이터 손실로 인해 a에 3값이 들어가짐
// 값의 범위가 맞지 않는 경우 오버플로우 & 언더플로우 발생하여 값의 차이가 생김
byte b = 130
// => b = -126
byte c = -130
// => c = 126
연산
피 연산자 중 큰 자료형에 의해 결과 값의 자료형이 정해짐
int + int => int int + double => double float + double => double....
출처 : Do it! 자바 완전정복 2장
Author And Source
이 문제에 관하여(<Do it 자바 완전 정복> 2장 자료형), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@hayouming/Do-it-자바-완전-정복-2장-자료형저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)