我尝试在java中创建一个计时器并将其显示在JFrame上,但是当我将我的计时器与我的手机计时器比较时,我手机中的计时器比我的速度快,为什么?
我在计时器中将延迟设置为每百秒 10。
这只是计时器的代码:
import javax.swing.Timer;
int min = 0, sec = 0, hundredSec = 0;
timer = new Timer(10, new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
hundredSec++;
if(hundredSec >= 99)
{
sec++;
hundredSec = 0;
}
if(sec >= 59)
{
min++;
sec = 0;
}
timerL.setText(String.format("%02d:%02d:%02d", min, sec, millisec));
}
});
抱歉英语不好。
提前感谢您的回答。
最佳答案
我相信您的问题与第三行代码有关。作为java API docs说:“延迟参数用于设置初始延迟和事件触发之间的延迟(以毫秒为单位)。”这意味着每次都有 10 毫秒的延迟,这可能会导致您的延迟。要解决此问题,您可以将代码行更改为:
timer = new Timer(0, new ActionListener());
通过将 10 更改为 0,它将立即运行,而不是慢慢落后。我建议阅读this article了解有关计时器的更多信息。
关于java - 在java中创建一个计时器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36532358/