java中的calendar类输出月份的时候,月份12无法显示

写calendar类的时候,年份,日,小时,都没有问题,就是当在构造函数中传入参数12时,输出的时候却是0。
原来,在calendar中月份是从0~11的,0代表的是一月,依次都是这样的。
来看代码具体如何实现的吧,
public Employee(String name,double salary,int year,int month,int day) {
this.name=name;
this.salary=salary;
hireday.set(year, month-1, day);
}

当你假设输入12月,如果这里month不减一的话就会输出0,所以我们减一,此时就是11,在系统中11就是代表12月份,但是,如果此时直接输出,将会是11月,为了输出显示12月份,我们要在输出的函数中在+1即可,
public String toString() {
return “name=”+name+" “+“salary=”+salary+” “+“hireday=”+hireday.get(Calendar.YEAR)+” “+(hireday.get(Calendar.MONTH)+1)+” "
+hireday.get(Calendar.DATE);
}

你懂我意思吧!

你可能感兴趣的:(java中的calendar类输出月份的时候,月份12无法显示)