Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/376.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ssh/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何更改计时器每次运行的延迟?_Java_Timer_Runtime_Delay - Fatal编程技术网

Java 如何更改计时器每次运行的延迟?

Java 如何更改计时器每次运行的延迟?,java,timer,runtime,delay,Java,Timer,Runtime,Delay,现在我有一个计时器,有一个5秒的延迟,但我需要一个不同的延迟后,它已经运行了一次。 我正在浏览一些图片,在第一轮中应该会显示5秒钟。在那之后,它应该显示他们10秒。如何在运行时更改计时器的延迟 必须发生的事情: 启动计时器 跑5秒钟 更改延迟 跑10秒钟 尝试添加一些代码 您需要检查计时器是否有5秒,将其设为10秒,以此类推 int delayTime = 5; //run first delay if (delayTime == 5){ delayTime = 10; } 这是该想法的一些代

现在我有一个计时器,有一个5秒的延迟,但我需要一个不同的延迟后,它已经运行了一次。 我正在浏览一些图片,在第一轮中应该会显示5秒钟。在那之后,它应该显示他们10秒。如何在运行时更改计时器的延迟

必须发生的事情:

启动计时器 跑5秒钟 更改延迟 跑10秒钟 尝试添加一些代码

您需要检查计时器是否有5秒,将其设为10秒,以此类推

int delayTime = 5;
//run first delay
if (delayTime == 5){
delayTime = 10;
}

这是该想法的一些代码,不知道它在您的项目中是什么样子。

对于您的用例,可以有两种方法:

第一种方法:

比如说我想把这张照片展示1000秒。所以我将执行for循环直到1000秒;或者,如果您想无限地运行它,那么您可以在for循环中更改条件。以下代码将在每5秒延迟后执行for循环

int delayTimeInMiliSec;
    for(int delayTime = 5 ; delayTime<=1000; delayTime = delayTime+5){
        delayTimeInMiliSec = delayTime * 1000;
        // here Call your method that shows pictures
        Thread.sleep(delayTimeInMiliSec);
    }
复制哪个计时器?是java.util.Timer还是javax.swing.Timer?
  import java.util.TimerTask;

    // Create a class extends with TimerTask
    public class ScheduledTask extends TimerTask {

        // Add your task here
        @Override
        public void run() {
            //show pictures code
        }
    }

import java.util.Timer;

public class SchedulerMain {
    public static void main(String args[]) throws InterruptedException {

        Timer time = new Timer(); // Instantiate Timer Object
        ScheduledTask st = new ScheduledTask(); // Instantiate SheduledTask class
        time.schedule(st, 0, 5000); // Create Repetitively task for every 5 secs


    }
}