java中的double类型数组给出了错误的输出

时间:2015-02-24 17:29:13

标签: java

我在我的程序中使用双数组并尝试使用一个基本公式为其赋值。但是我得到了错误的结果。

class temp
{
public static void main(String args[])
{

double ary_x[]=new double[5];
double diff=0.1d;
ary_x[0]=2.1d;
int num=5;

for(int i=1;i<num;i++)
      {
          ary_x[i]=ary_x[i-1]+diff;   
      }

}
}

我没有得到像2.1,2.2,2.3,2.4和2.5这样的值,而是获得了2.1,2.2,2000000000000003,2.000000000000004和2.000000000000005等值。但是如果我输入初始值2.5并且每次加0.5,那么它会给我正确的输出。为什么我得到这样的价值观?请帮我。谢谢:))

0 个答案:

没有答案