日期:2014-05-20  浏览次数:20748 次

java时间区间比较? 高手来!
取一天的时间 Date date = new Date();


怎么判断这个时间是  上午08:30  至下午17:00  

之间的。具体的思路是啥?

我的思路是  计算出这个时间  (小时和分钟) 的分钟数。然后比较这个数的大小。

想问问还有其他思路吗? 具体如何实现呢?

------解决方案--------------------
方法很多我这里用java.util.Calendar

Calendar date=Calendar.getInstance();//获取当前时间
Calendar date1=(Calendar) date.clone();//复制
Calendar date2=(Calendar) date.clone();//复制
date1.set(Calendar.HOUR, 8);//将一个时间设为当前8:00
date1.set(Calendar.MINUTE, 0);
date1.set(Calendar.SECOND, 0);
date2.set(Calendar.HOUR, 17);//将第二个时间设为当前17:00
date2.set(Calendar.MINUTE, 0);
date2.set(Calendar.SECOND, 0);
System.out.println(date.after(date1)&&date.before(date2));//利用before和after判断

------解决方案--------------------

int date = Integer.parseInt(new SimpleDateFormat("hhmmss").format(new Date()));
System.out.println(date > 83000 && date < 170000);

------解决方案--------------------
java都封装好了一些方法,不用自己去实现
------解决方案--------------------
date before and after API
------解决方案--------------------
joda提供的org.joda.time.Interval,contains 方法。