获取当前的日期和时间
- final Calendar c = Calendar.getInstance();
- mYear = c.get(Calendar.YEAR);
- mMonth = c.get(Calendar.MONTH);
- mDay = c.get(Calendar.DAY_OF_MONTH);
- mHour = c.get(Calendar.HOUR_OF_DAY);
- mMinute = c.get(Calendar.MINUTE);
创建当前日期对象
- Date toDate;
- toDate.setYear(mYear);
- toDate.setMonth(mMonth);
- toDate.setDate(mDay);
- Date endDate = toDate;
当打印endDate对象时,我得到了
- Mon Jan 01 13:11:00 GMT+03:00 3912
为什么
解决方法
From Date.setYear(int)description:设置自1900年以来的Date对象的gregorian日历年.因此,1900年2012 = 3912.
但是calendar.get(Calendar.YEAR)会返回确切的年份.因此,API的这种不一致会导致您的问题.但是无论如何,Date.setYear(int)已被弃用,因此,最好使用Calendar对象进行日期计算.