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); } } }