今天小试了日期的加减法,功能实现了,但觉得代码很长,有更好的解决方案或者建议请给出
package com.common;
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import org.junit.Test;
public class CalendarCalculate {
@Test
public void testCalendar() throws ParseException{
DateFormat format = new SimpleDateFormat("yyyy-MM-dd");
String strDate="2999-12-31";
Date dt=format.parse(strDate);
Calendar endDate=Calendar.getInstance();
endDate.setTime(dt);
Long e=endDate.getTimeInMillis();
Calendar currentDate=Calendar.getInstance();
currentDate.setTime(new Date());
Long c=currentDate.getTimeInMillis();
Long t=e-c;
System.out.println(t);
System.out.println(format(t));
}
public static String format(long ms) {//将毫秒数换算成x天x时x分x秒x毫秒
int ss = 1000;
int mi = ss * 60;
int hh = mi * 60;
int dd = hh * 24;
long day = ms / dd;
String strDay = day < 10 ? "0" + day : "" + day;
return strDay ;
}
}