我'与Java日期打,不能明白这一点:Java日期输出错误。为什么?
Date myBirth = new Date(1991,01,21);
Log.d("DATE: ", "" + myBirth);
在这里,我初始化的Date对象。为什么我得到这个输出?
DEBUG/DATE:(31693): Sat Feb 21 00:00:00 EET 3891
我'与Java日期打,不能明白这一点:Java日期输出错误。为什么?
Date myBirth = new Date(1991,01,21);
Log.d("DATE: ", "" + myBirth);
在这里,我初始化的Date对象。为什么我得到这个输出?
DEBUG/DATE:(31693): Sat Feb 21 00:00:00 EET 3891
- 一年y由整数y所表示 - 1900
- 一个月由从0到11的整数表示; 0是1月,1是2月,等等;因此11月是12月。
@AlexKulakovsky,你读过那篇文档的其余部分了吗?具体来说,你说1900年以来的年数通过了多少? –
谢谢。对不起,这个简单的问题.. –
哎呀,离开了我的原始答案的一年的一部分,现在更新。 –
从这个the Javadoc引用过时构造日期:
Parameters:
year - the year **minus 1900**.
month - the month between 0-11.
date - the day of the month between 1-31.
所以输出你问什么,而不是你想要的。
1月是第0个月,2月是第1个月。 –
您可能希望避免编写以0为前导的数字文字。前导0表示Java将该数字解释为八进制数。对于少于8的数字,这没有区别。然而010 == 8. – Dunes
这个构造函数已被弃用。看看http://stackoverflow.com/questions/7661723/how-do-i-set-custom-date-in-android – vfcosta