获取当前的日期和时间
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对象进行日期计算.