无法计算8位“双”变量

时间:2014-10-12 12:36:27

标签: java double

这是我的问题的一个简单示例。我不能存储一个超过8位数的双变量。我最后提供了输出。我在netbeans 6.9和jdk 1.6中做我的项目。 (我使用的是Windows 8.1 x64,如果这些信息有关系)。请尽快回复。

class DoubleT
{
 public static void main(String args[])
 {
  double x=1000000;
  int y=0;
  while(y<20)
  {
   x=x+x;
   System.out.println("output: "+x);
   y++;
  }
 }
}


output: 2000000.0
output: 4000000.0
output: 8000000.0
output: 1.6E7
output: 3.2E7
output: 6.4E7
output: 1.28E8
output: 2.56E8
output: 5.12E8
output: 1.024E9
output: 2.048E9
output: 4.096E9
output: 8.192E9
output: 1.6384E10
output: 3.2768E10
output: 6.5536E10
output: 1.31072E11
output: 2.62144E11
output: 5.24288E11
output: 1.048576E12

1 个答案:

答案 0 :(得分:1)

System.out.printf("output: %f\n", x);

上述代码可用于打印十进制数代替科学计数法,如果您不想使用小数部分%.0fDocumentation for printf