public void testLoop(double doubleTwo) {
double doubleOne = 0;
while (true) {
if (doubleOne == doubleTwo)
break;
double difference = doubleTwo - doubleOne;
if (difference < 1)
doubleOne = doubleOne + difference;
else
doubleOne = doubleOne + 1.0;
}
}
我關心雙重比較。但是代碼添加了epsilon差異。那麼循環總是會中斷?這個循環會不會總是斷開 - 雙重比較
但爲什麼不使用http://docs.oracle.com/javase/7/docs/api/java/ lang/Double.html#compare(double,double) –
如果參數是NaN,它不會中斷。你應該使用'Double.compare()'。 – fge