기본 형식
type variableName;
int intVariable;
String stringVariable;
char[] charArray;
변수 이름 규칙
- 대소문자 구분
- 숫자 시작 X
_
, $
사용 가능 → but $
는 자동 생성되는 변수명, _
는 상수에 쓰이므로 사용 권장 안함
- Camel Case
변수 타입
byte |
8bits |
-2^7 ~ 2^7-1 (-128 ~ 127) |
short |
16bits |
-2^15 ~ 2^15-1 (-32768 ~ 32767) |
int |
32bits |
-2^31 ~ 2^31-1 (-2147483648 ~ 2147483647) |
long |
64bits |
-2^63 ~ 2^63-1 (-9223372036854775808 ~ 9223372036854775807) |
float |
32bits |
*single-precision 32-bit IEEE 754 floating point |
double |
64bits |
*double-precision 64-bit IEEE 754 floating point |
char |
16bits |
\u0000 ~ \uffff (0 ~ 2^15-1) |
boolean |
Virtual Machine Depentdent |
true, false |
// 정수형
int x = 1234;
int x = 1234567890; // 오류: 범위를 벗어남
long x = 1234567890L; // long을 표현하기 위해선 L(대문자 엘)을 붙여줌
// 소수형
float f = 3.14f;
double f = 3.14;
// float과 double은 둘다 소수형을 담지만 정밀도(Precision) 혹은 정확도에 차이
// double이 더 정밀하게 값을 보관 -> double이 소수형 기본, float으로 쓰기 위해선 f 붙여줌
// 글자
char a1 = 'a'; // char는 작은따옴표를 사용
char a2 = 97; // 아스키 코드
char a3 = '\u0061'; // 유니코드
char a4 = '가';
// 불린
boolean x = true;
// 문자열 -> 자료형 X, 클래스임
// 클래스를 변수의 형으로 쓰고 변수를 선언하면 그 변수는 클래스의 인스턴스를 담을 수 있음
String a = "Hello"; // 큰따옴표
타입 기본 값
byte |
0 |
short |
0 |
int |
0 |
long |
0L |
float |
0.0f |
double |
0.0d |
char |
'\u0000' |
boolean |
false |
Literal
int x = 1234; // 정수 리터럴
long x = 1234L; // 롱 리터럴
long x = 12345678910L;
float g = 3.14f; // float 리터럴
double k = 314d; // double 리터럴