TIL | 개발 공부 기록

[ Java ] 0.1 + 1.1 = ?

우루뿡 2023. 10. 9. 23:11
728x90
반응형
SMALL

Java에서 0.1과 1.1을 더하면, 그 결과는 1.2000000000000002입니다. 

2진수로 저장되면 순환소수인데 할당된 메모리는 32칸이므로 끝자리에서 반올림이 발생합니다.

이로 인해 오차가 발생합니다.

 

* MISRA-C: 2004 Rule 13.3 : Floating-point expressions shall not be tested for equality or inequality.

 

 

# 참고

 

https://guard-x100.tistory.com/15

 

[Java] 0.1 + 0.2 = 0.3이 아니다!

@Test public void doubleTest() { Double a = 0.1; Double b = 0.2; Double c = 0.3; Assert.assertEquals(a + b, c, 0.0); } java.lang.AssertionError: Expected : 0.3 Actual : 0.30000000000000004 Double Type인 a 변수값은 0.1, b 변수값은 0.2를 대입하

guard-x100.tistory.com

 

https://youtu.be/-GsrYvZoAdA?si=i_erlWeqcL2q13iC 

 

728x90
반응형
LIST