Calendar设定月份时要注意日期

2023-03-14,,

先看下代码

public static void main(String[] args) {
int dataMonth = 4; DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd"); Calendar dataCalendar = Calendar.getInstance();
//今天日期,2021-03-31
System.out.println("今天:" + dateFormat.format(dataCalendar.getTime())); //设定月份为4月
dataCalendar.set(Calendar.MONTH, dataMonth - 1);
System.out.println("目标:" + dateFormat.format(dataCalendar.getTime()));
}

代码很简单,那结果是多少呢?

今天:2021-03-31
目标:2021-05-01

???怎么是5月1号?看了下日历,知道原因了,4月只有30天,没有31号,所以就把多出来的1天自动加上,成了5月1号了!

所以这块在设定的时候要注意了,平常可能是逻辑正常的,但到月底的时候,问题就显出来了!

Calendar设定月份时要注意日期的相关教程结束。

《Calendar设定月份时要注意日期.doc》

下载本文的Word格式文档,以方便收藏与打印。