计算任一时间的下一天

import java.sql.Date;

/**
 * 计算任一时间的下一天
 * @author Joson.Liu
 * 2014.08.27
 */
public class NextDay {
	public static void main(String args[]){
		Date now=new Date(System.currentTimeMillis());//获取当前时间
		System.out.println(getNextDay(now));
		
	}
	/**
	 * 计算指定时间的下一天
	 * @param date 指定时间
	 * @return  指定时间的下一天
	 */
	private static Date getNextDay(Date date){
		long addTime=1;							//计算相关的时间间隔
		addTime*=1;
		addTime*=24*3600*1000;
		Date nextDate=new Date(date.getTime()+addTime);  //把时间间隔转换为毫秒数
		return nextDate;
	}
}


亮点:巧妙的利用了JAVA存储时间的原理。

java.util.Date没有时区的概念,java.util.Calendar类才有时区的概念。
java.util.Date类的底层实现是通过一个long型的整型数据来保存时间的,这个值记录的是任何一个时间距
1970年1月1日0时0分0秒的毫秒数。因此,我们可以利用这个原理来计算下一天时只要在当前时间的毫秒数上
再加上一天的毫秒数就可以得到下一天。这样就巧妙的避免了月底、年底、闰月等条件的计算。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值