当我在玩 Java Puzzlers 的代码时(我没有这本书),我遇到了这段代码
public static void main(String args[]) {
System.out.println(2.00 - 1.10);
}
输出是
0.8999999999999999
当我尝试将代码更改为
2.00d - 1.10d
我仍然得到相同的输出0.8999999999999999
对于,2.00d - 1.10f
输出是0.8999999761581421
对于,2.00f - 1.10d
输出是0.8999999999999999
对于,2.00f - 1.10f
输出是0.9
为什么我没有像一开始那样得到输出0.9
?我无法从中做出任何正面或反面?有人能说清楚吗?