2011-04-18 2 views
22

내 코드에서 Double(0.0)Double.MIN_VALUE을 비교하는 데 걸린 버그가 발견되었습니다. 기본적으로 false는 false를 반환합니다.Double.MIN_VALUE이 Java에서 0보다 큽니까?

System.out.println(0.0 > Double.MIN_VALUE); 

어떻게 가능합니까?

+0

여기에 false가 인쇄됩니다. –

+1

.NET 프로그래머 용 : .NET에서 Java 'Double.MIN_VALUE'에 해당하는 것은'double.Epsilon'입니다. 'double.MinValue'의 .NET 값은 * 음수 * (절대 값) (유한) 표현 가능 값입니다. –

답변

38

javadoc for Double.MIN_VALUE에 따르면 MIN_VALUE은 :

이중형의 일정한 채 작은 포지티브 제로 값

그래서 Double.MIN_VALUE가, 그것으로의 포지티브 값이 음수되지 Double은 0이되지 않고 닫힐 수 있습니다.

관련 문제