我有一个fromDate
变量,值为"2015年1月1日"
,还有一个toDate
变量,值为"2015年4月1日"
。我想要计算出两个日期之间的季度数。我的代码如下:
String fromDate = "01-Jan-2015";
String toDate = "01-Apr-2015";
ArrayList<String> quarters = new ArrayList<String>();
DateFormat df = new SimpleDateFormat("dd-MMM-yyyy");
DateFormat dfYY = new SimpleDateFormat("yy");
Calendar cal = Calendar.getInstance();
cal.setTime(df.parse(fromDate));
Calendar cal1 = Calendar.getInstance();
cal1.setTime(df.parse(toDate));
while (cal1.getTime().after(cal.getTime())) {
int month = cal.get(Calendar.MONTH) + 1;
int quarter = month % 3 == 0 ? (month / 3) : (month / 3) + 1;
quarters.add("Q" + quarter + "-" + dfYY.format(cal.getTime()));
cal.add(Calendar.MONTH, 3);
}
但它的输出是Q1-15,Q2-15没有出现。如果我将
toDate
输入为 "02-Apr-2015",那么它就会输出 Q1-15,Q2-15。请帮助我找到我的错误所在。