3.25 변수와 타입
정수타입
byte → 1byte
char → 2byte
short → 2byte
int → 4byte
long → 8byte
실수타입
float → 4byte
double → 8byte
논리 타입
boolean → 운영체제마다 다름
*메모리의 크기
1Byte : 메모리를 일정하게 나눈 최소단위
1024Byte → 1KB
1024KB → 1MB
1024MB → 1GB
1024GB → 1TB
*대입(할당) 연산자 (=)
오른쪽의 값을, 왼쪽에 집어 넣어라
ex)int age = 23;
Lvalue Rvalue (항상 값을 생성하는 부분)
(변수를 준비하는 부분)
자바언어에서는 한 개의 문자값을 만들 때 단일인용부호('')를 사용하고,
"문자열"을 만들 때는 이중인용부호("")를 사용한다.
변수 선언시 변수명 작성 규칙
- 대소문자가 구분되며 길이에 제한이 없다.
- 예약어(Keyword)를 사용할 수 없다.
- 숫자로 시작해서는 안 된다. (시작은 문자이거나 '$','_' 여야 함)
- 특수문자는 ‘_’와 ‘$’만 허용된다.
- 첫문자는 영어 소문자로 시작하되, 다른 단어가 붙을 경우 첫자를 대문자로 한다. (관례)
* 변수는 초기화가 되어야 읽기 가능
* 기본타입의 맹점 : 적잘한 기본값을 지정하기가 힘들다.
int familyCount = ????; //결측치(Missing Value)
String name = null;
변수의 사용범위 (유효범위)
변수는 태어나서 사용(read/write)되고 죽는 라이프사이클(생명주기)을 가진다.
*자바언어에서는, 변수의 유효범위는 중괄호
타입 변환 (형변환)
* 자동 타입 변환 Promotion
작은 타입 > 큰 타입으로
* 강제 타입 변환 Casting
- 큰 타입 > 작은타입으로
- 데이터 유실(손실)이 발생 가능
연산식에서 자동 타입 변환
서로 다른 타입의 피연산자는 같은 타입으로 변환
두 피연산자 중 크기가 큰 타입으로 자동 변환
int intValue = 10;
doble doubleValue = 5.5;
double result = intValue + doubleValue # ==> 15.5 출력