java - 将参数传递给定时器任务 (Java)

标签 java timer

我有一个循环中的计时器任务。我想将循环中的数字传递给时间任务。

这可能吗?

我的代码:

...
int i = 0;
while (i < array.size){
    Timer timer = new Timer();
    timer.schedule(new RegrowCornAnimate(), 0, 1000);
i++
}
...

class RegrowCornAnimate extends TimerTask {
     public void run() {
//Do stuff
   }
}

如何更改它以便我可以在 TimerTask 类中使用 i? - 因为在每个 TimerTask 中都会知道它是在哪个 i 下/在/从中创建的。

最佳答案

class RegrowCornAnimate extends TimerTask {

    private final int serial;


    RegrowCornAnimate ( int serial )
    {
      this.serial = serial;
    }

    public void run() {
      //Do stuff
    }
}

...
int i = 0;
while (i < array.size){
    Timer timer = new Timer();
    timer.schedule(new RegrowCornAnimate( i ), 0, 1000);
    i++;
}
...

关于java - 将参数传递给定时器任务 (Java),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8498691/

相关文章:

c++ - 使用 boost::asio 实现事件计时器

c++ - boost::asio::high_resolution_timer 用法示例?

.net - 多线程环境中的对象生存期

javascript - Ajax 请求计时器更新间隙

java - 编译器为什么以及如何区别对待这两个条件?

java - 实现产品 key

java - 检查值是否没有数字,如果是,则用简写 Java 替换为 'Invalid'

java - 从 JAR 中获取文件

java - 无论 Java 中的计时器如何,Tomcat 的重新启动都会使作业每次都运行

java - 如何使用定时器动态调整帧大小?