为什么我在Java中出现无法访问的语句错误?

use*_*963 2 java unreachable-statement

我正在为一个在线教程中找到的hailstone序列编写一个代码,但是这样做我遇到了一个无法访问的语句错误.我不知道我的代码是否正确,如果我错了,我不想要纠正它的建议(关于冰雹序列,我想自己做... :)).我只想帮助解决第19行的"无法访问的语句"错误.

class HailstoneSequence {
    public static void main(String[] args) {
        int[][] a = new int[10][];
        a[0][0] = 125;
        int number = 125;

        for (int i = 0;; i++) {
            for (int j = 1; j < 10; j++) {
                if (number % 2 == 0) {
                    a[i][j] = number / 2;
                    number = number / 2;
                } else {
                    a[i][j] = (number * 3) + 1;
                    number = (number * 3) + 1;
                }
            }
        }

        for (int i = 0;; i++) {
            for (int j = 0; j < 10; j++) {
                System.out.println(a[i][j]);
            }
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

NPE*_*NPE 10

这是一个无限循环:

for(int i=0;;i++){
Run Code Online (Sandbox Code Playgroud)

无论什么事情发生之后都永远不会被执行(即无法到达).


sta*_*arf 5

在你的第一个循环中:

for(int i=0;;i++){
....
}
Run Code Online (Sandbox Code Playgroud)

您没有定义结束条件.例如

for(int i=0; i<10; i++){
....
}
Run Code Online (Sandbox Code Playgroud)

因此循环永远不会退出.