byte, short,char, int, long, 타입
- 변수는 선언될 때의 타입에 따라 저장할 수 있는 값의 종류와 허용 범위가 달라짐
- 정수 타입은 5개로 메모리 할당 크기와 저장되는 값의 범위가 다름
출처, 이것이 자바다
- 메모리 크기를 n이라고 했을 때 정수 타입은 동일한 구조의 2진수로 저장
출처, 이것이 자바다
package ch02.sec02;
/*
* int형 변수에 다양한 값 표현 - 2진수, 8진수, 10진수, 16진수
*/
public class IntegerLiteralExample {
public static void main(String[] args) {
int var1 = 0b1011; //2진수. 0b
int var2 = 0206; //8진수. 0
int var3 = 365; //10진수
int var4 = 0xB3; //16진수. 0x. 0~9, A(10), B(11), C(12), D(13), E(14), F(15)
System.out.println("var1:" + var1); //11
System.out.println("var2:" + var2); //134
System.out.println("var3:" + var3); //365
System.out.println("var4:" + var4); //179
}
}
package ch02.sec02;
/*
* 정수형 데이터타입 : byte
* 값범위 : -128 ~ 127
*/
public class ByteExample {
public static void main(String[] args) {
byte var1 = -128;
byte var2 = -30;
byte var3 = 0;
byte var4 = 30;
byte var5 = 127;
//byte var6 = 128; //컴파일 에러.
System.out.println(var1); //-128
System.out.println(var2); //-30
System.out.println(var3); //0
System.out.println(var4); //30
System.out.println(var5); //127
}
}
package ch02.sec02;
/*
정수형 숫자를 입력하면, int형 범위의 데이터로 인식이 된다.
숫자값이 int형 범위를 벗어나게 사용하면 에러발생.
*/
public class LongExample {
public static void main(String[] args) {
long var1 = 10; //정수형 int형 데이터
long var2 = 20L; //정수형 long형 데이터 표현 : 정수값L 또는 l (L을 많이씀)
//long var3 = 1000000000000; //컴파일러는 정수값을 int로 바라본다. 범위가 초과되어 에러발생
long var4 = 1000000000000L;
System.out.println(var1); //10
System.out.println(var2); //20
System.out.println(var4); //1000000000000
}
}