比较两个日期其间的天数并打印输出
比较两个日期之间的天数并打印输出
在项目中经常会遇到日期之间的比较,今天又遇到了一个类似这样的事情,现在把解决的方法发布出来。
import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date; /** * * @author michaelyang * */ public class Test { /** * @param args */ public static void main(String[] args) { Date date1,date2,date3; SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); try {//比较date1 和date2的大小 并把它们之间相差的天数加给date3,忽略时分秒 date1 = sdf.parse("2011-2-27"); date2 = sdf.parse("2011-3-2"); date3 = sdf.parse("2011-3-4"); long cacheData = (date2.getTime()-date1.getTime()); System.out.println("___相差:"+cacheData/(1000*60*60*24)+"天"); date3 = new Date(date3.getTime()+cacheData); System.out.println(sdf.format(date3)); } catch (ParseException e) { // TODO Auto-generated catch block e.printStackTrace(); } } }
结果为:
___相差:3天
2011-03-07
其实很简单:主要是通过把date转换为long数据进行比较!