0
我想从Java Date/Calender类获取最后一个日期的最后日期。获取最后一个Java日期/日历的最后日期
例如:
If current date = 3rd Oct
Lat Quater Last Date : 30th Sept.
我能够得到同样的使用date.getMonth()方法,但这些方法是depricated,不知道什么更好的办法才达到相同。
我想从Java Date/Calender类获取最后一个日期的最后日期。获取最后一个Java日期/日历的最后日期
例如:
If current date = 3rd Oct
Lat Quater Last Date : 30th Sept.
我能够得到同样的使用date.getMonth()方法,但这些方法是depricated,不知道什么更好的办法才达到相同。
对于日期操作,您应该使用Calendar
。这可能不是最有效的方式,但它适用于您的问题:
public Date calculateLastDayOfLastQuarter(Date date) {
Calendar calendar = Calendar.getInstance();
calendar.setTime(date);
SimpleDateFormat sdf = new SimpleDateFormat("dd.MM.yyyy");
int year = calendar.get(Calendar.YEAR);
try {
switch (calendar.get(Calendar.MONTH)) {
case Calendar.JANUARY:
case Calendar.FEBRUARY:
case Calendar.MARCH:
return sdf.parse("31.12." + (year - 1));
case Calendar.APRIL:
case Calendar.MAY:
case Calendar.JUNE:
return sdf.parse("31.03." + year);
case Calendar.JULY:
case Calendar.AUGUST:
case Calendar.SEPTEMBER:
return sdf.parse("30.06." + year);
case Calendar.OCTOBER:
case Calendar.NOVEMBER:
case Calendar.DECEMBER:
return sdf.parse("30.09." + year);
default:
return null;
}
} catch (ParseException e) {
e.printStackTrace();
return null;
}
}
谢谢,我一直在寻找这个。 – Swagatika
请注意放弃票的原因,我没有找到相同的问题。 – Swagatika