首页 > 代码库 > 关于获取某月某日最后一天时Calendar的cal.getActualMaximum(Calendar.DAY_OF_MONTH)的吐槽

关于获取某月某日最后一天时Calendar的cal.getActualMaximum(Calendar.DAY_OF_MONTH)的吐槽

例如:

在2017.03.29-31号

新建一个Calendar的単例

设置年:2017

设置月:2

int day = cal.getActualMaximum(Calendar.DAY_OF_MONTH)

得到日期为:3

 

例如:

在2017.03.01-28号

新建一个Calendar的単例

设置年:2017

设置月:2

int day = cal.getActualMaximum(Calendar.DAY_OF_MONTH)

得到日期为:28

 

原因:

1.Calendar类当你set的时候,并不会立即生效,只有等你get的时候才会生效

 

解决方法:

  实例化Calendar之后,执行clear方法,清除Calendar中的缓存

关于获取某月某日最后一天时Calendar的cal.getActualMaximum(Calendar.DAY_OF_MONTH)的吐槽