데이터(자료)를 임시로 담을 수 있는 상자(메모리 공간)
변수 선언과 초기화를 동시에 진행
int j = 20;
System.out.println("j = " + j);
기본 자료형은 데이터가 변수에 직접 저장되고,
객체 자료형은 객체 메모리 주소가 변수에 저장된다.
자동(묵시적) 형 변환
: 작은 공간의 메모리에서 큰 공간의 메모리로 이동
명시적 형 변환
: 큰 공간의 메모리에서 작은 공간의 메모리로 이동
-> 명시적 형 변환은 데이터가 누실될 수 있다.
byte by = 10;
int in = by;
System.out.println("in = " + in);
int iVar = 100;
byte bVar = (byte)iVar;
System.out.println("bVar = " + bVar);
iVar = 123456;
bVar = (byte)iVar;
System.out.println("bVar = " + bVar);
// 결과
in = 10
bVar = 100
bVar = 64
System.out.printf("%5d\n", 123);
System.out.printf("%5d\n", 1234);
System.out.printf("%5d\n", 12345);
// 결과
123
1234
12345
System.out.printf("%f\n", 1.23);
System.out.printf("%.0f\n", 1.23);
System.out.printf("%.1f\n", 1.23);
System.out.printf("%.2f\n", 1.23);
// 결과
1.230000
1
1.2
1.23
- 단항 연산자 : 피연산자가 하나 존재
(ex) +x, -x, !x- 이항 연산자 : 피연산자가 두개 존재
(ex) x = y, x < y- 삼항 연산자 : 피연산자가 세개 존재
(ex) 조건식 : true ? false
+= : 더하고 대입
-= : 빼고 대입
*= : 곱하고 대입
/= : 나누고 대입
%= : 나누고 대입
- && 논리곱(AND) : a와 b가 모두 참이면 참
- || 논리합(OR) : a와 b 중 하나라도 참이면 참
- ! 논리부정(NOT) : a의 상태를 부정
: 데이터를 비트 단위로 환산하여 연산을 수행하며, 다른 연산자보다 연산 속도가 향상된다. 자바에선 메모리를 딱히 다룰 일이 없으므로 잘 다루진 않음.
- & AND 연산 : a와 b가 모두 1이면 1
- | OR 연산 : a와 b 중 하나라도 1이면 1
- ^ XOR 연산 : a와 b가 같지 않으면 1