定时器
使用定时器的目的就是给它安排任务,让它在指定的时间完成任务

前面两个是在指定延迟后执行或者重复执行,后面两个是在指定时间执行或者重复执行。
new Timer().schedule(new TimerTask() { @Override public void run() { //实际中会扔一个对象进来,我们就可以在这里操作这个对象的所有方法了 System.out.println("--boom--");//爆炸 } }, 2000,3000);
定义了一个TimerTask对象,需要重写run()方法,然后运行这个程序,可以看出来第一次2秒钟后打印“–boom–,后面每隔3秒打印一次。
如果我想要隔2秒执行一次,再隔4秒执行一次,再隔2秒执行一次,再隔4秒执行一次……这该如何实现呢?
public class TraditionalTimer { public static void main(String[] args) { new Timer().schedule(new MyTimerTaskA(), 2000);//A和B随便开一个 while(true) {//打印秒钟,一秒输出一次 System.out.println(new Date().getSeconds()); try { Thread.sleep(1000); } catch(Exception e) { e.printStackTrace(); } } } } //自定义两个定时器任务类,继承TimerTask即可 class MyTimerTaskA extends TimerTask { @Override public void run() { System.out.println("--boomA--"); new Timer().schedule(new MyTimerTaskB(), 4000); } } class MyTimerTaskB extends TimerTask { @Override public void run() { System.out.println("--boomB--"); new Timer().schedule(new MyTimerTaskA(), 2000); } }
参考:
https://blog.csdn.net/eson_15/article/details/51523842
立志如山 静心求实
浙公网安备 33010602011771号