将参数传递给Timer Task(Java)

我在循环中有一个计时器任务;

我想把时间任务传递给循环中的数字……

那可能吗?

我的代码:

... 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 ? -as在每个TimerTask中将知道它是在/ in / from下创建的。

谢谢,

 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++; } ... 

RegrowCornAnimate类提供一个构造函数,该构造函数接受一个int并将其存储在一个字段中。 创建时将i传递给构造函数。

RegrowCornAnimate创建一个构造函数,获取您想要使用的参数,然后将它们存储为类中的成员。

调用RegrowCornAnimate.run读取值。

请参阅http://www.roseindia.net/java/task-scheduling.shtml上的示例。 此示例在每次运行时打印一个数字。