🏷️
Java의 기본 데이터 타입(Primitive Types)은 다음과 같다!
| 타입 | 크기 | 범위 | 설명 |
|---|---|---|---|
byte | 1바이트 | -128 ~ 127 | 정수형 |
short | 2바이트 | -32,768 ~ 32,767 | 정수형 |
int | 4바이트 | -2^31 ~ 2^31 - 1 | 정수형 (주로 사용) |
long | 8바이트 | -2^63 ~ 2^63 - 1 | 정수형 (큰 값 처리 시) |
float | 4바이트 | 약 ±3.40282347E+38F (7자리 정확도) | 부동소수점 (소수 포함) |
double | 8바이트 | 약 ±1.79769313486231570E+308 (15자리 정확도) | 부동소수점 (주로 사용) |
char | 2바이트 | '\u0000' ~ '\uffff' (유니코드 문자) | 문자형 |
boolean | 1비트 | true 또는 false | 논리형 |
☕
java는 정적 타입 언어로, 변수와 반환값의 타입이 매우 중요하다!
☑️ 타입 강제 변환 (Type Casting)
: Java는 타입이 엄격하기 때문에 명시적 변환이 필요할 때가 있다.
1. 자동 변환 (Widening Conversion)
작은 크기의 타입 → 큰 크기의 타입으로 자동 변환.
예: int → double
int a = 10;
double b = a; // 자동 변환
2. 강제 변환 (Narrowing Conversion)
큰 크기의 타입 → 작은 크기의 타입으로 변환할 때는 명시적 캐스팅 필요.
예: double → int
double a = 3.14;
int b = (int) a; // 명시적 변환 (소수점 이하 버림)
☑️ 소수점 관련
int는 소수점을 표현할 수 없다.
소수점이 필요한 경우 float 또는 double을 사용.
예
int a = 3;
int b = 2;
double result = (double) a / b; // 1.5
☑️ 정수와 실수의 연산
int a = 3;
int b = 2;
int result = a / b; // 결과: 1 (소수점 버림)
int a = 3;
double b = 2.0;
double result = a / b; // 결과: 1.5
😮 메서드의 반환 타입은 선언된 타입과 반드시 일치해야 한다!
public int add(int a, int b) {
return a + b; // 정수 반환
}
public double divide(int a, int b) {
return (double) a / b; // 실수 반환
}
⚠️ 반환 타입이
int이면 반드시 정수를 반환해야 하고, 실수를 반환하려면 컴파일 에러가 발생하니 주의!