Java将计时器设置为暂停和重置计时器

Java将计时器设置为暂停和重置计时器,java,timer,Java,Timer,如何在Java中暂停计时器,例如,我的计时器有20秒,当计时器为0时,计时器将暂停10秒,然后计时器将重置(返回到20秒) 可以在for循环之外添加循环。for循环执行完成后,将立即执行后面的语句,即Thread.sleep(10000)语句。之后,它将进入while循环的下一次迭代,该循环将再次将c重置为20,线程将休眠20秒 while(true) { for (int c =20; c>=0; c--){ try { Thread.sleep(

如何在Java中暂停计时器,例如,我的计时器有20秒,当计时器为0时,计时器将暂停10秒,然后计时器将重置(返回到20秒)


可以在for循环之外添加循环。for循环执行完成后,将立即执行后面的语句,即Thread.sleep(10000)语句。之后,它将进入while循环的下一次迭代,该循环将再次将c重置为20,线程将休眠20秒

while(true)
{
for (int c =20; c>=0; c--){
        try {
            Thread.sleep(1000);
        } catch (InterruptedException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
  Thread.sleep(10000);
}

将线程休眠10秒的具体要求是什么?

您可以使用计时器任务并在执行后暂停计时器10秒,如下所示

public static void main(String[] args) {
    TimerTask task = new TimerTask() {
        @Override
        public void run() {
            System.out.println("TimerTask ");
            try {
                Thread.sleep(10000);
            } catch (InterruptedException e) {
                e.printStackTrace();
            }
        }
    };
    Timer timer = new Timer();
    timer.schedule(task,0,20000);
}
public static void main(String[] args) {
    TimerTask task = new TimerTask() {
        @Override
        public void run() {
            System.out.println("TimerTask ");
            try {
                Thread.sleep(10000);
            } catch (InterruptedException e) {
                e.printStackTrace();
            }
        }
    };
    Timer timer = new Timer();
    timer.schedule(task,0,20000);
}