변수 선언 하기
int age; // 정수
double value; // 실수
int x, y, z // 한꺼번에 선언 가능
카멜 표기법이 관례이며 첫 번째 글자는 문자 혹은 '$' 혹은 '_'이어야 한다.
변수 초기화 & 초기값
int score; //변수 선언
score = 90; //값 저장 (변수 초기화, 초기값)
int score = 90; // 동시에도 가능
변수 사용
int hour = 3;
int minute = 5;
// 피연산자 중 하나가 문자열일 경우 나머지 피연산자들도 문자열로 자동 변환됨
System.out.println(hour + "시간" + minute + "분");
❗️ 변수는 자신이 속한 블록 내부에서만 사용 가능하다.
int v1 = 0;
if (true) {
int v2 = 0;
if (true) {
int v3 = 0;
}
v1 = v2 + v3; // 컴파일 에러; v3이 선언 블록을 벗어남
}
기본 타입 Primitive Data Types
📁 기본 타입의 종류: byte, short, int, long, float, double, boolean, char
✓ 정수 타입
타입 | 메모리 사용 크기 | 저장되는 값의 허용 범위 |
byte | 1 Byte (8 bit) | -128 ~ 127 |
short | 2 Byte (16 bit) | -2^15 ~ (2^15 - 1) |
char (유니코드) | 2 Byte (16 bit) | 0 ~ (2^16 - 1) |
int | 4 Byte (32 bit) | -2^31 ~ (2^31 - 1) |
long | 8 Byte (64 bit) | -2^63 ~ (2^63 -1) |
- 리터럴: 소스 코드에서 프로그래머에 의해 직접 입력된 값
- 정수 리터럴: 2진수(0b, 0B으로 시작), 8진수(0으로 시작), 10진수, 16진수(0x, 0X로 시작)
❗️정수 리터럴은 기본적으로 int로 간주되기 때문에 int의 범위를 초과하는 경우 정수 리터럴 뒤에 L을 붙여준다.
long balance = 30000000000L
❗️문자 리터럴: 하나의 문자를 작은따옴표로 감싼 것. 유니코드로 변환되어 저장된다.
- char 변수에 문자 리터럴을 저장할 경우 자동으로 문자로 매핑되어 출력
- int 변수에 문자 리터럴을 저장할 경우 유니코드 자체가 출력
char var1 = 'A'; //A가 출력
int var2 = 'A'; // 65가 출력
✓ 실수 타입
타입 | 메모리 사용 크기 | 정밀도(소수점 이하 자리) |
float | 4 Byte (32bit) | 7자리 |
double | 8 Byte (64bit) | 15자리 |
- 실수는 기본적으로 double 타입으로 해석되기 때문에 float타입 변수로 저장할 경우 리터럴 뒤에 f나 F를 붙여준다
double var = 3.14;
float var = 3.14f;
⇒ 메모리에 여유가 있고 특별한 이유가 없다면, 정확도가 더 높은 double 타입에 실수 리터럴을 저장하는 게 좋다
✓ 논리 타입: boolean (true, false)
boolean run = true;
⚠︎ String 타입
큰따옴표로 감싼 문자 (문자열)
String 타입은 기본 타입이 아니고 참조 타입이다 (reference types)
+ 이스케이프 문자: 역슬래시가 붙은 문자, 문자열 내부에 특정 문자를 포함시킬 수 있음 (예: \t, \n, \r, \", \', \\ 등)
기본 타입 Primitive Data Types: 항상 값을 가지며 소문자로 시작한다
참조 타입 Reference Types (Non-primitive Data Types): null 값을 가질 수 있으며 대문자로 시작한다 (예: String, Array, Class, Interface 등)
'컴퓨터 & 코딩 > Java' 카테고리의 다른 글
[혼공학습단 10기][혼공자] 변수와 시스템 입출력 (0) | 2023.06.29 |
---|---|
[혼공학습단 10기][혼공자] 타입 변환 (0) | 2023.06.28 |
[혼공학습단 10기][혼공자] Chapter 1 정리 (0) | 2023.06.28 |
[혼공학습단10기][혼공자] m1 맥북에서 자바 다운로드하고 환경변수 설정하기 (0) | 2023.06.28 |
[혼공학습단 10기][혼공자] 1주차 미션 (0) | 2023.06.27 |