float, double

public static void main(String args[]) {
	System.out.println(2.00 - 1.10); // 0.89999999
	System.out.println(new BigDecimal("2.00").subtract(new BigDecimal("1.10"))); //0.90
}

long

final long MICROS_PER_DAY_1 = 24 * 60 * 60 * 1000 * 1000;
// 변수 타입은 long이라서 별일 없을거 같지만
// 곱셈 연산값들이 int형이고 연산에서 오버플로우가 발생
// 그래서 원래값보다 200배 정도 작은 값이 나온다

final long MICROS_PER_DAY_2 = 24L * 60 * 60 * 1000 * 1000;
// 적용할꺼면 연산값 타입을 동일하게 맞춰주면 된다