Java for循环只执行一次

Java for循环只执行一次,java,loops,for-loop,infinite-loop,Java,Loops,For Loop,Infinite Loop,代码只执行一次。 免责声明:很清楚这是一个无限循环,以这种方式编写它是解决问题的一部分 更新:我的错误日志中有一个异常得到了修复,问题仍然是一样的,代码只执行一次 我尝试在不同的任务(打印一个句子)的相同代码中使用相同的for循环,效果很好,问题一定出在我的JS代码上 for(inti=0;i我只想澄清这一点作为答案,因为我希望这个问题将被删除 for循环不是您的问题。您正在编写有异常的代码,或者正在阻止正在运行的线程。如果您正在使用另一个线程来运行该循环,则缺少UncaughtExceptio

代码只执行一次。 免责声明:很清楚这是一个无限循环,以这种方式编写它是解决问题的一部分

更新:我的错误日志中有一个异常得到了修复,问题仍然是一样的,代码只执行一次 我尝试在不同的任务(打印一个句子)的相同代码中使用相同的
for
循环,效果很好,问题一定出在我的JS代码上


for(inti=0;i我只想澄清这一点作为答案,因为我希望这个问题将被删除

for循环不是您的问题。您正在编写有异常的代码,或者正在阻止正在运行的线程。如果您正在使用另一个线程来运行该循环,则缺少
UncaughtExceptionHandler
会使其跳过日志记录。类似地,使用
Callable
会导致异常从个人体验中消失(也许出于同样的原因?)

如果您正在阻塞运行它的线程,那么在阻塞方法将控制权返回到您调用它的上下文之前,该线程不会运行任何其他内容

如果你说你有循环“运行一次”的案例但之后仍然打印,我将把它作为一个例外,并且您运行测试的方式是有缺陷的。这可能是由无数原因造成的,例如愚蠢的
系统#退出
/
运行时#暂停
调用、线程、使用服务运行测试,或者在某些生产环境(如游戏)中运行测试服务器或电话(或…浏览器?)。对于未来的情况,您的问题最好是可以复制的,除了主方法和您提供的代码之外。如果您不能做出这样的示例,至少您应该提供您如何测试它


如果您做了所有这些,但仍然存在问题,我认为这对您来说是显而易见的,或者阅读您的问题的人会更容易回答您的问题。

由于引发异常,代码只执行一次,或者您正在进行的一个或多个网络呼叫花费的时间太长,这会使您请相信代码只执行一次

为了确认在for循环中使用的值
i+1
没有被
1
替换,我在我的机器上运行了以下循环:

for (int i = 0; i < i + 1; i++) {
    System.out.println(i);
}
for(int i=0;i

…然后它继续打印从0开始的数字。

@YCF\u L这不是真的,如果用一个print(i)语句替换for循环的内容,它不会在1次迭代中停止。为什么
中有逗号?”https://www,google.com“
?@Sergio它是否引发异常?也许你在某处捕捉到它,但不记录任何东西?(假设您检查了日志。)@Sergio:您已经声明,如果将for循环替换为
while(true)
,则行为相同,因此一定存在某种异常/错误。您可能希望自己删除该问题。这对其他人可能没有帮助。