这是我的循环类:
公共类计时器{
private Timer timer;
private static boolean isRunning = true;
public static void gameLoop()
{
while(isRunning) //the loop
{
try {
Main.cash--;
Thread.sleep(2000);
} catch (InterruptedException e) {
// e.printStackTrace();
}
}
}
}
运行小程序时,出现白色屏幕,并且无法关闭小程序,必须在eclipse中使用终止按钮。
最佳答案
while(isRunning=true) //the loop
...将
isRunning
设置为true,然后返回true(无论isRunning
的先前值是什么),因此始终执行if语句。单个=是分配,在这种情况下,几乎可以肯定这不是您想要执行的操作。您想使用==代替:
while(isRunning==true) //the loop
或者,更简洁地(最好也是!)简单地:
while(isRunning) //the loop
我假设
isRunning
在代码的其他地方都将设置为false,因为这里没有任何东西可以将其设置为false。关于java - for(;;)循环使我的小程序无法使用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16349477/