为什么要进入无限循环?

Joh*_*ter 0 java

当我开始我的代码

for (byte i = 0; i < 1000; i++) {
    System.out.print(i);
}
Run Code Online (Sandbox Code Playgroud)

我得到无限循环.为什么?

Jun*_*san 5

只是因为字节值在其最大值之后开始溢出,即127.

将值i上升127然后将溢出-128然后再增加到127.因此,此过程将永远不会满足您的for循环终止条件,因此永远循环.