변수: 변하는 것 / 상수: 변하지 않는 것 (constant value)
변수는 숫자만 저장하는 것이 아닌 문자, 객체 등 하나의 값을 저장할 수 있다.
저장공간의 선언
Int number;
Int: 저장 공간 타입(접시 종류)
number: 저장공간 이름(접시 이름)
Int number: Integer(정수)라는 저장공간 타입에 number(숫자)를 담는것
값의 저장(할당)
Java에서 저장공간에 저장하는 방법은 2가지가 있다.
(1) 선언과 동시에 저장하는 방법 "초기화"라고 함
Int number = 10;
Int:저장 공간 타입
number: 저장 공간 이름
10: 저장할 값
(2) 선언 이후에 값을 저장하는 방법 "덮어쓰기" 라고 함
number = 10;
number: 저장 공간 이름
10: 저장할 값
절대로 변하지 않을 값을 저장하는 공간 (ex. Pi → 3.141592...)
상수 선언
final int number = 10;
number = 11;
final을 선언하여 변하지 않는 값 상수로 선언했기 때문에 에러가 발생한다. 만약 final이 없다면 변수이기 때문에 문제 없이 실행된다.
boolean
True / false 값만 저장
boolean flag = true;
논리형 변수 boolean 선언 및 True 값으로 초기화
flag = flase;
False 값으로도 저장할 수 있습니다.
char (문자형 변수)
'A', '1' 와 같은 문자 하나만 저장한다.
따옴표 한개로만 감싼 것이 문자형 변수
byte,short,int,long (정수형 변수)
0,1,2,99 와 같은 정수형 숫자값을 저장
정수형의 표현 범위
byte: -128 ~ 127
short(2byte): -32,768 ~ 32,767
int(4byte): -21억 ~ 21억
long(8byte): 9백경 정도
long을 사용할 때 뒤에 접미사 L을 붙인다.
float, double (실수형 변수)
0.123, 0.999999 와 같은 소수점 실수값을 저장
실수형 변수 표현 범위
실수도 변수 표현 범위를 넘게 되면 overflow 발생하고 입력값과 다른 값으로 표현됨
float(4byte): 3.4 = -10^38 ~ 3.4 10^38 (long보다 큼) 범위의 숫자 저장 가능
→ float는 3.4 10^38 까지 표현 가능, double은 1.7 10^308 범위 표현 가능
float는 뒤에 접미사 f를 붙여서 사용한다.
ex) float floatNumber = 0.123f
double은 접미사 없이 사용한다.
변수를 참조하기 위해서는 변수의 이름을 가져와야 한다.
byte byteNumber = 127;
System.out.println(byteNumber)