如果您有任何NaN值,则可能会遇到这种情况:
例如:
public class Test{ public static void main(String[] args) { double a = Double.NaN; double b = Double.NaN; double c = 5; System.out.println(a < b); System.out.println(a > b); System.out.println(b < c); System.out.println(c < b); }}所有
这些打印
false。因此,您可能会遇到以下两种情况:两个非NaN值都被认为与NaN“相等”,但是一个大于另一个。基本上,您应该弄清楚如何处理NaN值。当然,还要检查这确实是问题所在……您是否真的想要适合自己的NaN值?



