我正在编写一个Java程序,其中有一个由5个字符串组成的数组列表和一个5秒的倒计时计时器。我的问题是,我希望字符串在计时器1秒内的任何时候都会发生变化。也就是说,每当倒计时计时器为1秒时,字符串应该更改为另一个字符串,然后当它达到1秒时,它应该更改为其他字符串,直到数组列表中的所有字符串如图所示。
在某处保留对计时器的引用,并使用:
timer.cancel();
timer.purge();
我认为这个演示代码将帮助你:
class Helper extends TimerTask
{
public static Timer timer;
public static int i = 0;
public static void setTimer(Timer timer) {
Helper.timer = timer;
}
public void run()
{
System.out.println("Timer ran " + ++i);
if (i==5) {
timer.cancel();
timer.purge();
}
}
}
public class Test3
{
public static void main(String[] args)
{
Timer timer = new Timer();
Helper task = new Helper();
Helper.setTimer(timer);
timer.schedule(task, 0, 1000);
}
}