编译中的小数bug和死循环的终止(以eclips为例)
以这段代码为例:
double i = 1;
double sum = 0;
while(i != 0)
{
sum += item;
i -= 0.1;
System.out.println(i);
}
System.out.println(sum);
他的编译结果由人为计算的话,i应该输出0.9,0.8,0.7······0,sum应该输出5.5
而实际编译器编译出的结果是:图片仅显示一部分编译中的浮点数bug和死循环的终止

由此我们就步入了死循环,因为i在执行的过程中不会直接减到0,而会减到小于0
所以这是关于浮点数的一个小bug,以后使用要注意。
出现了死循环,我们就需要让它终止,这时我们按下图红色的正方形即可。编译中的浮点数bug和死循环的终止

相关文章:

  • 2021-05-25
  • 2022-12-23
  • 2021-05-16
  • 2021-12-12
  • 2022-02-16
  • 2021-12-12
  • 2021-11-25
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2022-02-14
  • 2021-11-23
  • 2021-12-25
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案