JAVA.两个日期相减实现

在java里面,两个日期相差多少天,如何相减呢?
取两个日期时间戳,然后相减,得出相差的毫秒书,然后换算成天。

import java.util.Date;
import java.text.SimpleDateFormat;
import java.util.Calendar;

public class DateCal {
/**
  * @param args
  */
public static void main(String[] args) throws Exception {
  // TODO 自动生成方法存根
  //日期相减算出秒的算法
  Date date1 = new SimpleDateFormat("yyyy-mm-dd").parse("2006-06-08");
  Date date2 = new SimpleDateFormat("yyyy-mm-dd").parse("2006-06-12");
 
  long l = date1.getTime()-date2.getTime()>0 ? date1.getTime()-date2.getTime():
   date2.getTime()-date1.getTime();
 
  System.out.println(l/1000+"秒");
 
  //日期相减得到相差的日期
  long day = (date1.getTime()-date2.getTime())/(24*60*60*1000)>0 ? (date1.getTime()-date2.getTime())/(24*60*60*1000):
   (date2.getTime()-date1.getTime())/(24*60*60*1000);
 
  System.out.println("相差的日期: " +day);
 
}
}

你可能感兴趣的:(java,算法)