Java语言java.swing.Timer如何实现计时器启动之时就执行一次任务?

java.swing.Timer定时器的机制似乎是启动之时并不执行任务,必须等到设定的时间间隔到了才执行任务。

即,如果我设定时间间隔是5s.假设计时器启动之时记为时间0,则执行任务的时刻是

  • 5s
  • 10s
  • 15s
  • 20s
  • .......

我想问的是如何实现,执行任务的时刻是

  • 0s
  • 5s
  • 10s
  • 15s
  • 20s
  • ....... 即计时器一启动就立刻执行任务一次。
    请问如何实现?

先new Timer,设置delay为0,然后timer.start之后再重新设置delay

在创建定时器之后,立刻调用一次timer的 Listener 方法