반응형
정수형 데이터 타입
데이터 타입 | 메모리 크기 | 표현 가능 범위 |
byte | 1 byte | -128 ~ 127 |
short | 2 byte | -32,768 ~ 32,767 |
int | 4 byte | -2,147,483,648~2,147,483,647 |
long | 8 byte | -9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807 |
→ 올바르지 않은 데이터 타입을 사용할 경우 Type mismatch 오류 발생
상수의 데이터 타입
데이터 타입 | 메모리 크기 | 표현 가능 범위 |
float | 4 byte | ±(1.40129846432481707e-45 ~ 3.40282346638528860e+38) |
double | 8 byte | ±(4.94065645841246544e-324d ~ 1.7976313486331570e+308d) |
→ 상수(constant)란 변하지 않는 값을 의미함
int a = 1;
1 = 3;
▶️ 위와 같이 입력하면 1은 1이고, 3은 3이라는 고유한 값을 가지고 있기 때문에 컴파일이 되지 않음
package sujin.variables;
public class ConstantDemo {
public static void main(String[] args) {
float a = 2.2;
}
}
▶️ 2.2라는 실수를 변수 a에 할당하기 위해 float를 사용했지만 Type mismatch 오류 발생
→ 할당하고자 하는 실수 뒤에 F를 입력해주면 해결
→ float 대신 double을 사용해서도 해결 가능
package sujin.variables;
public class ConstantDemo {
public static void main(String[] args) {
long a = 2147483648L;
}
}
▶️ 2147483648이라는 정수를 변수 a에 할당하기 위해서 long을 사용했지만 Type mismatch 오류 발생
→ 입력한 정수가 default값인 int를 사용하고 있기 때문에 int를 long으로 바꿔줘야 함
→ 할당하고자 하는 정수 뒤에 L을 입력해주면 해결
반응형
'Language > Java' 카테고리의 다른 글
[ Java ] 조건문 (0) | 2021.09.03 |
---|---|
[ Java ] 연산자 (0) | 2021.09.03 |
[ Java ] 변수 (0) | 2021.09.03 |
[ Java ] 숫자와 문자열 (0) | 2021.09.03 |
[ Java ] Eclipse 설치 및 기능 (0) | 2021.09.02 |