java输出任意两个日期之间有多少天

package JingDian;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date; public class howmanyDays {
public static void main(String[] args){
String d1 = "2013-06-12";
String d2 = "2013-04-08";
dateDays howmany = new dateDays();
howmany.calculate(d1, d2); } } class dateDays{
String dateFormat = "yyyy-MM-dd";
SimpleDateFormat format= new SimpleDateFormat(dateFormat);
//TrueDate方法用于把输入的String类型的日期转化为Date型(即转化为日期格式)
public Date TrueDate(String str){
if(str == null)
return null;
try
{
//SimpleDateFormat类中的parse()方法解析字符串的文本,生成 Date。format() 将给定的 Date格式化为字符串
return format.parse(str);
}catch(ParseException e)
{
e.printStackTrace();
}
return null;
}
public void calculate(String date1,String date2){
if(date1.equals(date2))
{
System.out.println("两个日期相等");
return;
}
if(date1.compareTo(date2)>0)
{
//确保data2中存放的是较大的那个日期
String tmp;
tmp = date1;
date1 = date2;
date2 = tmp;
//转化为Date
Date Ddate1 = TrueDate(date1);
Date Ddate2 = TrueDate(date2);
//Date类中的getTime()方法返回long型整数,即从GMT1970-01-01 00:00:00到该Date对象之间的时间差,毫秒为单位
int t = (int) ((Ddate2.getTime()-Ddate1.getTime())/1000/60/60/24);
System.out.println(t);
}
}
}
上一篇:Git Flow 的正确使用姿势


下一篇:网络最大流dinic