Eri*_*ric 0 java calendar date
基本上,我希望我的结果是我所期望的打印2012-10-23.但是,它非常有线.这是我的代码:
SimpleDateFormat ft = new SimpleDateFormat("YYYY-MM-dd");
Calendar cal = Calendar.getInstance();
cal.set(2012, 10, 22);
cal.add(Calendar.DATE, 1);
Date startDate = new Date();
startDate = cal.getTime();
String date = ft.format(startDate).toString();
System.out.println(date);
Run Code Online (Sandbox Code Playgroud)
我想打印2012-10-23,但结果是2012-11-23.
有人能告诉我它为什么会自动添加1个月吗?谢谢.
Calendar class months从0开始,而不是从1开始,因此当将month设置为10时,你不是设置10月而是11月.
将您的代码更改为
cal.set(2012, 9, 22);
Run Code Online (Sandbox Code Playgroud)
甚至更好
cal.set(2012, Calendar.OCTOBER, 22);
Run Code Online (Sandbox Code Playgroud)
更多信息:
| 归档时间: |
|
| 查看次数: |
91 次 |
| 最近记录: |