这似乎是一个真正简单的问题,但我只是想澄清我的疑问。我正在查看其他开发人员编写的代码。有一些涉及浮点数的计算。浮点数
例如:Float fNotAvlbl = new Float(-99);
他为什么要创建一个新对象?如果我们做Float fNotAvlbl = -99;
会发生什么(-99作为标志在这里表示不适用)后下楼的代码中,我们定义:
fltValue1 = 0.00f;
fltValue2 = 0.00f;
并与方法调用,它返回浮动填充这两个值。之后,我们这两个值再次转换成与浮动对象:
fltVal1 = new Float(fltValue1);
fltVal2 = new Float(fltValue2);
,比做一个比较if(fltVal1.compareTo(fNotAvailable) == 0) do something.
这一切是因为预计的compareTo封装类对象?
我很抱歉,如果这是一个真正的基本问题。
只是好奇,你确定'Float'中的'compareTo'没有实现浮点相等/比较问题的某种解决方法吗? – justkt 2011-03-22 16:00:33
谢谢迈克尔。 – t0mcat 2011-03-22 16:05:44
只有两个不同 - 'NaN'和'0.0'对'-0.0'。 – Bozho 2011-03-22 16:07:22