【发布时间】:2021-02-24 02:31:32
【问题描述】:
为什么在 Java 中将双精度值与浮点值相加会导致双精度值的小数点后位数比输入本身多?
为什么小数点后的位数增加了?谁在小数点后提供这个附加值?
public class Main {
public static void main(String[] args)
{
double data = 444.324;
float value = 5.1f;
System.out.println(value+data);
}
}
从数学上讲,输出应该是
449.424
对吗?
但是下面程序的输出是
449.4239999046326
谁能解释这种行为?
【问题讨论】:
-
同样的事情在这里解决了stackoverflow.com/questions/5257166/…
标签: java type-conversion implicit-conversion