2

我将如何在 Java 中的 while 循环中实现计时器?

while (game not ended) {
//do something
(wait 5 seconds)
}

会是这样吗?:(java.util.Timer

int delay = 1000; //milliseconds

    while (game not ended) {
        //do something
        new Timer(delay, taskPerformer).start();
    }
4

3 回答 3

2

Java Thread.sleep() 是流行的最爱:

于 2013-05-18T03:00:33.567 回答
2

您可以使用Threadstatic sleep()方法。

while (game not ended) {
   //do something
  Thread.sleep(5000);
}
于 2013-05-18T03:03:43.163 回答
1

不要阻塞 EDT(事件调度线程)——当这种情况发生时,GUI 将“冻结”。而不是调用实现重复任务Thread.sleep(n)的 Swing或长时间运行的任务。有关更多详细信息,请参阅Swing 中的并发。TimerSwingWorker

于 2013-05-18T14:13:00.077 回答