我是以下Java程序。
public class A{
public static void main(String[] args) {
double C = 500.0;
int init = 0, incr = 0;
while (init < C) {
init = incr + 2;
}
System.out.println(init);
}
}
这里当我运行这个程序时,它不会抛出任何错误,也不会显示任何错误。这里当我完全禁用while
块时,程序运行并打印init
(0)的值。
我甚至尝试将System.out.println(init);
更改为System.out.println("Hello");
,但仍然没有停用while
块,即使这不会打印出来。
请让我知道为什么会出现此问题,以及我的代码出错(如果有,请告诉我如何解决)或其他任何帮助。
谢谢,
勒凯什
答案 0 :(得分:6)
init = incr + 2;
应该是
init = init + 2;
否则循环永远不会终止,因为incr + 2
总是2。
答案 1 :(得分:1)
将其更改为init = init +2。因为每次你都要添加incr的值并辅以init。
答案 2 :(得分:1)
将其更改为init = init +2。
答案 3 :(得分:1)
而不是init = incr + 2; 它应该是init = init + 2;
因为在你的程序中你只是将inti值增加到2次迭代,但如果你使用init = init + 2,它会将init值增加到499然后从while循环中输出。