JAVA 기초

형 변환(type casting) 미완

동윤123 2024. 4. 9. 14:03

형변환(type casting)은 프로그래밍에서 하나의 데이터 타입을 다른 데이터 타입으로 변환하는 과정을 말합니다. 형변환은 크게 두 가지 유형으로 나눌 수 있습니다: 암시적 형변환명시적 형변환.

자동형변환, 강제형변환

 

 

자동형 변환 순서도(강제시 역순)

 

*유의점1

long 과 float의 타입 크기상 float이 long보다 작은 타입이여야 한다.

하지만 그림에는 float이 더큰 타입이라고 표시되어 있는데 

이것은 기본적으로 메모리 설계상 정수 타입보다 실수타입이 더 크게 되어있다.

하지만 단순히 데이터 크기다 더크다고 이해 하면 안됨

정확히는 데이터 범위와 정밀도 문제!!!

 

좀더 깊게 알고싶으면 클리!

 

double a = 9223372036854775808.0; // 비교를 위해 실수로 표현
double b = 3.4 * (Math.pow(10, 38)); // 3.4 x 10^38

System.out.println(a); // 9.223372036854776 x 10^18
System.out.println(b); // 3.4 x 10^38
System.out.println(a < b); // true

출처: https://inpa.tistory.com/entry/JAVA-☕-타입-형변환-종류-방법-💯-총정리 [Inpa Dev 👨‍💻:티스토리]

 

 

https://inpa.tistory.com/entry/JAVA-%E2%98%95-%ED%83%80%EC%9E%85-%ED%98%95%EB%B3%80%ED%99%98-%EC%A2%85%EB%A5%98-%EB%B0%A9%EB%B2%95-%F0%9F%92%AF-%EC%B4%9D%EC%A0%95%EB%A6%AC

 

☕ JAVA 타입 형변환 원리 & 방법 - 완벽 정리

타입 변환 (Type Conversion) 하나의 타입을 다른 타입으로 바꾸는 것을 타입 변환 혹은 형변환 이라고 한다. 예를 들어 byte 타입을 int 타입으로 변환하거나 반대로 int 타입을 byte 타입으로 변환하는

inpa.tistory.com

https://chat.openai.com/share/982c3531-ea42-45c0-8a0e-b65c20f70aa4

 

ChatGPT

A conversational AI system that listens, learns, and challenges

chat.openai.com

 

자동 형 변환 예시

		int intDataBox = 100; // 4byte  
		double doubleDataBox; // 8byte 
		
		//                 100 
		doubleDataBox = intDataBox;
		// 작은 상자에서 큰상자로 들어가는 개념이다. 
		System.out.println(doubleDataBox);
		// 자동 형 변환 이다.

 

 

강제 형 변환 예시

 

결과 값 : 15, 7( int로 강제 형 변환되어 double의 소숫점 데이터 유실)

		double interestRate; //8byte
		int discount; 		//4byte
		
		interestRate = 15.5; 
		// discount = <-- 변수에 강제 형 변환해서 값을 넣어 보자. 
		
		discount = (int)interestRate;
		System.out.println(discount);
		System.out.println( (int)7.5 );