<div dir="ltr">Hi,<div><br></div><div>Just an observation from a floating point layman:</div><div><br></div><div>I noticed that Float and Double uses "It is equal to the value.." when describing various constant values like MIN_VALUE, MAX_VALUE etc.</div><div><br></div><div>However, Float.NaN and Double.NaN instead uses "equivalent to":</div><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><font face="monospace">/**<br></font><font face="monospace"> * A constant holding a Not-a-Number (NaN) value of type<br></font><font face="monospace"> * {@code float}.  It is <i>equivalent</i> to the value returned by<br></font><font face="monospace"> * {@code Float.intBitsToFloat(0x7fc00000)}.<br></font><font face="monospace"> */<br></font><font face="monospace">public static final float NaN = 0.0f / 0.0f;</font></blockquote><div><br></div><div>Is this difference in terms deliberate and justified by there being more than one NaN bit pattern? Is the implementation allowed to return any NaN, since all NaNs are equivalent, even when not equal?</div><div><br></div><div>If not, would it perhaps be more appropriate to use "equal to" here as well? </div><div><br></div><div>Cheers,</div><div>Eirik.</div></div>