[JAVA] 형 변환 예제 2

1356 단어 자바자바

public class FromIntToFloat {

	public static void main(String[] args) {
		// TODO Auto-generated method stub

		int num1 = 123456780;
		int num2 = 123456780;
		
		float num3 = num2;
		num2 = (int)num3;
		
		int result = num1 - num2;
		System.out.println(result);	// -4
		
	}

}

int 값을 float 타입으로 자동 변환하면서 문제가 발생했기 때문에
실행 결과를 보면 0이 나오질 않았다.
따라서 정밀도 손상이 발생한다.


public class FromIntToDouble {

	public static void main(String[] args) {
		// TODO Auto-generated method stub

		int num1 = 123456780;
		int num2 = 123456780;
		
		double num3 = num2;
		num2 = (int)num3;
		
		int result = num1 - num2;
		System.out.println(result);	// 0
		
	}

}

모든 int 값을 실수 타입으로 안전하게 변환시키기 위해서는
double 타입을 사용해야 한다.

public class CompareOperatorExample2 {

	public static void main(String[] args) {
		// TODO Auto-generated method stub

		int v2 = 1;
		double v3 = 1.0;
		System.out.println(v2 == v3);	// true
		
		double v4 = 0.1;
		float v5 = 0.1f;
		System.out.println(v4 == v5);	// false
		System.out.println((float)v4 == v5);	// true
		System.out.println(v4 == (double)v5);	// false
		
	}

}

실수 값 비교 시 모든 연산자를 float 타입으로 변환 후 비교

좋은 웹페이지 즐겨찾기