无法编译for循环

0 java for-loop compiler-errors

我正在努力编译

public class ForwardLoop {
    public static void main(String[] args) {
        int firstNumber = 5;
        int lastNumber = 45;
        int hopValue =  5;

        for(firstNumber; firstNumber <= lastNumber; firstNumber = firstNumber + hopValue) {
            System.out.print(firstNumber);
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

但我最终在第9行得到一个错误,说这不是一个声明.

在此先感谢您的帮助.

man*_*uti 6

for循环语句中的初始化必须是有效语句.firstNumber不是一个有效的声明.在您的情况下,您可以将初始化作为空语句,因为您已经在之前分配了初始值:

for (; firstNumber <= lastNumber; firstNumber = firstNumber + hopValue) {
    System.out.print(firstNumber);
}
Run Code Online (Sandbox Code Playgroud)

或者您可以在for循环内移动声明,但这会将其范围限制为仅循环:

// You can also use the += operator
for (int firstNumber = 5; firstNumber <= lastNumber; firstNumber += hopValue) {
    System.out.print(firstNumber);
}
Run Code Online (Sandbox Code Playgroud)

  • 好的一点,但是`+ = hopValue`看起来更好,不是吗? (2认同)