【发布时间】:2013-05-30 06:28:45
【问题描述】:
我有这个代码:
while (x < 10.0) {
x += y;
}
如果x 和y 是浮点数,显然如果你添加它们,循环将无限继续。我不明白为什么它不会通过 10。不通过 10 似乎是不可能的,但根据我的教科书却没有。
这是为什么呢?是因为浮点数发生舍入吗?还是我错过了什么?
编辑:顺便说一下,x 和 y 严格来说是积极的
【问题讨论】:
-
这取决于
x和y的值。它们是什么? -
尝试将
System.out.println(x)放入循环中以跟踪每个循环的增量 -
x 和 y 的值是相关的。如果 y = 0,这显然是一个无限循环(如果 x
-
他们严格为正,所以 x 和 y 都高于 0。这意味着如果他们循环遍历它将超过 10。
-
@user1832483:不,那不是真的。