下面是Math.max方法中float类型的重载方法的源代码 public static float max(float a, float b) {
        if (a != a) return a; //If either value is NaN, then the result is NaN.
if ((a == 0.0f) && (b == 0.0f)
    && (Float.floatToIntBits(a) == negativeZeroFloatBits)) {
    return b;
}
return (a >= b) ? a : b;
    }但是 if (a != a) return a;这句看不懂啊,注释里说如果任意值不是float类型,结果就是那个非数字?
返回值不是float类型的吗?
而且if (a != a)这个怎么能做判断,难道a非数字时就会返回true吗?我这里a为非数字完全不能编译啊。。
我是新手,学了重载,想看看官方是怎么写的。。结果看不懂,求指点谢谢了