변수
- 변수 선언 시 해당되는 자료형의 크기만큼 메모리가 할당된다.
- 이때 변수는 할당된 메모리를 가리키는 이름
- 가독성 있는 이름을 사용하는 것이 좋다. camel notation (ex. ns보단 numberOfStudent)
자료형
* 기본 자료형 (Primitive Data type)
- 크기 고정
- 정수는 기본적으로 int 타입
- 실수는 기본적으로 double 타입
- long 타입은 숫자 뒤에 'L'을 표시하여 구분 (대문자 사용하여 1과 혼동 막는게 좋음)
- float 타입은 숫자 뒤에 'f'를 표시하여 구분 (대소문자 상관X)
|
|
정수형
|
문자형
|
실수형
|
논리형
|
|
1 byte
|
byte
|
|
|
boolean
|
|
2 byte
|
short
|
char
|
|
|
|
4 byte
|
int
|
|
float
|
|
|
8 byte
|
long
|
|
double
|
|
* 참조 자료형 (Reference Data type)
- 크기 가변
- new 키워드 사용
- 객체 생성 후 데이터 타입으로 사용
실수 표현
* 부동소수점
- 0.1 = 1.0 * 10^-1
- 지수와 가수로 표현
- 지수부에서 0을 표현할 수 없기 때문에 약간의 오차 발생 가능
문자 표현
* character set (문자세트)
- 컴퓨터에서 문자는 양의 정수로 저장됨.
- 이때 각 문자의 코드 값을 모아둔 것을 character set라고 함
- e.g. ASKII, utf-8, utf-16
* UNICODE
- ASKII와 완벽히 호환
- utf-8 : 1~4byte의 가변길이, 인터넷이나 네트워크에서 효율성을 위해 많이 사용
- utf-16 : 2byte의 고정길이
- Java는 UNICODE(utf- 16) 사용
논리형
- True / False
- 반복문의 수행 여부(flag), method의 반환값 타입, 배열 비어있는지 여부 등 나타낼 때 많이 활용
상수
- 변하지 않는 수
- final 예약어 사용
- 변수와 구별하기 위해 대문자로 설정하는 것이 좋음.
* 상수 사용 이유
- 오류 확률 줄일 수 있음
- 의미있는 문자로 인식하기 쉬움 (가독성)
- 수정이 간단 (초기화 부분만 바꿔주면 됨)
* 리터럴
- e.g. int i = 10;
- 변수에 대입 시 사용하는 숫자, 문자, 논리값
- 리터럴은 상수풀(프로그램 로드 시 메모리 차지하는 부분)에 존재
* 형 변환
- 서로 다른 자료형 간 연산 수행을 위해 필요
- 작은 타입에서 큰 타입으로의 형변환은 자동 (e.g. int -> long)
- 덜 정밀한 타입에서 더 정밀한 타입으로의 형변환은 자동 (e.g. int -> float)
'Java & Kotlin' 카테고리의 다른 글
| [Java 기초] 조건 연산자, 비트 연산자 (0) | 2022.01.19 |
|---|---|
| [Java 기초] Eclipse로 자바 프로그램 작성하기 (0) | 2022.01.19 |
| [Java 기초] 자바란? (0) | 2022.01.19 |