你这个很简单,不需要转成long再比较,java.util.Date已经有after()、before()等方法来比较两个时间的先后顺序了.示例代码如下:
/**
*?检测一个时间是否在一个时间区间之内
*/
public?boolean?checkValidDay(Date?start,Date?end,Date?check){
if(check.after(start)?check.before(end)){
return?true;
}else{
return?false;
}
@Test
public?void?test()?throws?ParseException{
DateFormat?format?=?new?SimpleDateFormat("yyyyMMdd");
Date?startDay?=?format.parse(validStartDayStr);
Date?endDay?=?format.parse(validEndDayStr);
Date?testDay1?=?format.parse(testDay1Str);
System.out.println(checkValidDay(startDay,?endDay,?testDay1));
测试代码输出如下:
false
true
? 获取当前时间之后,要随着系统更新时间,就要使用java提供的线程类,每隔几秒获取当前时间并打印出来,示例如下:
public?class?ThreadTest?implements?Runnable{?//实现Runnable接口
public?void?run()?{?//线程执行的方法
while(true){?
try{?
System.out.println(new?Date());?//打印当前时间
Thread.sleep(1000);//休眠1毫秒
}catch(Throwable?t){?
t.printStackTrace();?
}?
public?static?void?main(String[]?args)?{?
Thread?t?=?new?Thread(new?ThreadTest());?//新建一个线程类
t.start();?//线程启动
java定时器
import?java.util.Random;
import?java.util.Timer;
import?java.util.TimerTask;
public?class?MainEntry?{
private?int?a;
public?void?setVal()?{
Timer?timer?=?new?Timer();
//?每隔一秒生成一个[1,100)内的随机整数,赋给成员a
timer.schedule(new?TimerTask()?{
@Override
public?void?run()?{
Random?rand?=?new?Random();
setA(rand.nextInt(100));
System.out.println("a:?"?+?getA());
},?1000,1000);
public?void?setA(int?a)?{
this.a?=?a;
public?int?getA()?{
return?a;
public?static?void?main(String[]?args)?{
MainEntry?me?=?new?MainEntry();
me.setVal();
以上就是土嘎嘎小编为大家整理的java代码时间随时变化相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!