我想弄清楚Calendar类是如何工作的。为什么以下代码将来会产生一个月的日期:
package bondcalc;
import java.util.Calendar;
import java.util.Date;
import datefunctions.*;
import java.util.GregorianCalendar;
public static void main(String[] args) {
Calendar cal=new GregorianCalendar();
cal.clear();
cal.set(2012,9,20);
Date d1 =cal.getTime();
System.out.printf("Date1: %s%n",d1);
}
以下是输出结果:
Date1: Sat Oct 20 00:00:00 PDT 2012
答案 0 :(得分:4)
使用为月份定义的Calendar
常量:
cal.set(2012, Calendar.SEPTEMBER, 20);
Calendar
的月份字段从零开始,就像数组索引一样。
答案 1 :(得分:2)
答案 2 :(得分:1)
如documentation所述,Java月份为0索引。因此,这里的9表示10月。
答案 3 :(得分:1)
月份字段从索引= 0开始,因此0 = 1月,9 = 10月。