Java 如何暂停循环?
我正在做一个游戏,用户可以得到一份“工作”,总收入会随着他们的薪水而增加,它会暂停一秒钟,然后重复。这就像cookie Clicker中的cookie系统,您在其中制作一些cookie,它会暂停,然后显示更多。在游戏中,你点击一个按钮,你就会得到一份“工作” 我希望暂停发生在这里:Java 如何暂停循环?,java,Java,我正在做一个游戏,用户可以得到一份“工作”,总收入会随着他们的薪水而增加,它会暂停一秒钟,然后重复。这就像cookie Clicker中的cookie系统,您在其中制作一些cookie,它会暂停,然后显示更多。在游戏中,你点击一个按钮,你就会得到一份“工作” 我希望暂停发生在这里: for(jobButtonClicked = true;;){ totalMoney = totalMoney + jobSalary;
for(jobButtonClicked = true;;){
totalMoney = totalMoney + jobSalary;
//I want the total Money to increase by jobSalary,
//pause for one second, and then do it again.
我尝试了“Thread.sleep();”,但如果我不填写参数,就会出现错误“类型Thread中的方法sleep(long)不适用于参数()”。如果我把毫秒数放在括号里,我会得到错误:“Unhandled exception type InterruptedException”我是这方面的初学者,我这样做是为了学习。如果可以的话,请帮忙。谢谢你抽出时间 写入
try{
Thread.sleep(1000);
} catch (InterruptedException e){}
别忘了为循环创建一个新线程。对休眠的东西使用事件调度线程是不好的,因为它会使您的应用程序冻结。我猜您不只是想永远增加jobSalary。;)您不想更新标签吗?另外,在不同的线程中运行循环,否则一旦单击该按钮,它将阻止事件调度线程(EDT),并且您的GUI将永远不会重新绘制。您知道关于此问题的任何信息吗。也会有帮助。
catch(InterruptedException被忽略){}
是一种很好的做法,用于发出信号,表明您有意不想在catch
块中执行任何操作。
try{
Thread.sleep(1000);
} catch (InterruptedException e){}