java用定时器改变变量_java定时器,留着用

说明:该定时器作用是

设定定时器首次执行的时间firstTime和执行间隔period,如firstTime=2015-3-25 9:00:00,period=24小时,若程序启动时,已经超过firstTime(2015-3-25 9:00:00),则定时器在下一个period时(2015-3-26 9:00:00)第一次执行。

TimerTask task = new TimerTask() {//匿名内部类

@Override

public void run() {

//TODO

}

};

//设置执行时间

Calendar calendar = Calendar.getInstance();

int year = calendar.get(Calendar.YEAR);

int month = calendar.get(Calendar.MONTH);

int day = calendar.get(Calendar.DAY_OF_MONTH);//每天

//定制每天的9:00:00执行

calendar.set(year, month, day, 9, 0, 0);

// dateSetter为制定时间

Date dateSetter = new Date();

dateSetter = calendar.getTime();

// nowDate为当前时间

Date nowDate = new Date();

// 所得时间差为,距现在待触发时间的间隔

long interval = dateSetter.getTime() - nowDate.getTime();

if(interval < 0){

calendar.add(Calendar.DAY_OF_MONTH, 1);

dateSetter = calendar.getTime();

interval = dateSetter.getTime() - nowDate.getTime();

}

Timer timer = new Timer();

long period = 24 * 60 * 60 * 1000L;

// long period = 2 * 60 * 1000L;

timer.schedule(task, interval, period);

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值