강제 타입 변환이란 프로그래밍에서 데이터의 타입을 명시적으로 변경하는 과정을 의미합니다. 이는 자동 타입 변환(암시적 변환)과 달리, 개발자가 직접 변환을 지정해야 합니다.
JavaScript에서는 Number(), String(), Boolean() 등을 활용하여 변환할 수 있습니다.
let num = "123";
let convertedNum = Number(num); // 문자열 → 숫자 변환
console.log(convertedNum); // 123 (숫자 타입)
let boolValue = Boolean(0); // 0은 false로 변환
console.log(boolValue); // false
Python에서는 int(), float(), str(), bool() 함수를 사용하여 타입을 변환합니다.
num = "42"
converted_num = int(num) # 문자열 → 정수 변환
print(converted_num) # 42
bool_value = bool("") # 빈 문자열은 False로 변환
print(bool_value) # False
Java에서는 형 변환 연산자 (타입) 를 사용하여 강제 변환할 수 있습니다.
double d = 9.7;
int num = (int) d; // 실수 → 정수 변환 (소수점 절삭)
System.out.println(num); // 9
C언어에서는 (타입)을 사용하여 강제 변환을 수행합니다.
double d = 5.8;
int num = (int)d; // 실수 → 정수 변환 (소수점 절삭)
printf("%d", num); // 5
데이터 손실 가능성
런타임 오류 발생 가능
console.log(Number("abc")); // NaN (숫자로 변환 불가)
0, "", null, undefined, NaN → false true | 언어 | 강제 타입 변환 방법 |
|---|---|
| JavaScript | Number(), String(), Boolean() |
| Python | int(), float(), str(), bool() |
| Java | (타입) 형 변환 연산자 사용 |
| C | (타입) 형 변환 연산자 사용 |
강제 타입 변환을 사용할 때는 변환이 적절한지, 데이터 손실이 없는지 꼭 확인해야 합니다. 😊