我一直在努力理解浮点数Java中舍入错误的概念.虽然我知道double不应该用于财务计算,但我不明白为什么'd'变量不会出现0.0.如何打印出第一张println?
package zetcom;
public class floatingComparison {
public static void main(String[] args) {
double r = Math.sqrt(2);
double d = r * r - 2;
if (d == 0)
{
System.out.println("sqrt(2) squared minus 2 is 0");
}
else
{
System.out.println("sqrt(2) squared minus 2 is " + d);
}
}
}
Run Code Online (Sandbox Code Playgroud)
任何解释将不胜感激.