首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

关于Float.NaN,该如何解决

2012-01-09 
关于Float.NaNfloattempFloat.NaNif(tempFloat.NaN){System.out.println( ok )}System.out.println

关于Float.NaN
float   temp   =   Float.NaN;
if(temp   ==   Float.NaN){
System.out.println( "ok ");
}
System.out.println( "end ");
 
float   temp2   =   Float.POSITIVE_INFINITY;
if(temp2   ==   Float.POSITIVE_INFINITY){
System.out.println( "ok ");
}
System.out.println( "end ");


输出结果为:
end
ok
end

当然,用Float.IsNaN   结果不同。但我想知道为什么?谢谢各位


[解决办法]
static public boolean isNaN(float v) {
return (v != v);
}


这个就是isNaN的实现,可见NaN不等于任何东西,包括它自身

热点排行