为什么我的 `for` 循环显示无穷大?

Why does my `for` loop show infinite numbers?

这是我的代码:

package practice;    

public class Practice {
    public static void main(String[] args) {
        for (int i = 0 ; i < 5 ; i =+ 2) {
            System.out.println(i);
        }         
    }
}

你犯了一个错误。您可能希望通过编写

每次让 i 递增 2
 i+=2

但你却写了

 i =+2 

也就是说i永远等于2。你给的for循环条件

 i < 5

表示当i小于5时一直循环,因为i一直为2,所以会一直循环下去

您的 for 在每次循环后将 i 的值设置为 +2(与 2 相同),因为您将 += 符号:

for (int i = 0 ; i < 5 ; i =+ 2)

所以它会无限循环,因为你的 for 的条件 i < 5 总是为真,因为 i0 开始(0 < 5 为真) 然后,在每个循环之后, i 被设置为 22 < 5 也是如此)。

试试这个:

package practice;    

public class Practice {
    public static void main(String[] args) {
        for (int i = 0 ; i < 5 ; i += 2) {
            System.out.println(i);
        }         
    }
}