for (int i = 0; i < 10;) {
i=i++;
System.out.println("Hello World" );
}
基本上 i 的值保持不变,保持为 0,因此它是无限的。但为什么它没有改变?
如果我改变i=i++
至i++
, 有用。 (不是无限循环)。
最佳答案
因为 i++
在表达式求值后递增 i
,所以你基本上是在说 i = i
。如果您执行 i =++i
那么它将起作用,因为它会在计算表达式之前递增 i
。
关于java - 请解释为什么这段代码会导致无限循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35419780/