【发布时间】:2016-07-09 01:55:47
【问题描述】:
我是使用 Timer 类的新手,因此在将其合并到我的项目之前尝试对其进行试验。我想知道为什么当计数达到 5 时这个程序没有终止。即使 while 循环的条件不满足,程序也会继续运行。
package Timer;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.Timer;
public class demo {
private static int count;
public static void main(String[] args) {
ActionListener executeThis = new ActionListener(){
@Override
public void actionPerformed(ActionEvent arg0) {
// TODO Auto-generated method stub
System.out.println("Hello");
count++;
}
};
Timer timer = new Timer(500, executeThis);
timer.setInitialDelay(1000);
timer.start();
while(count < 5){
}
}
}
【问题讨论】:
-
为什么要停止?您正在将其作为计时器作业执行。它基本上安排它并在给定的时间间隔后运行它
-
为什么当我没有while循环时,计时器从不发送actionEvent?如果不需要 while 循环,为什么会发生这种情况?