我从一个传入的对象中获取了一个日期属性,形式如下:
Tue May 24 05:05:16 EDT 2011
我正在编写一个简单的帮助方法将其转换为日历方法,我使用了以下代码: public static Calendar DateToCalendar(Date date )
{
Calendar cal = null;
try {
DateFormat formatter = new SimpleDateFormat("yyyyMMdd");
date = (Date)formatter.parse(date.toString());
cal=Calendar.getInstance();
cal.setTime(date);
}
catch (ParseException e)
{
System.out.println("Exception :"+e);
}
return cal;
}
为了模拟传入的对象,我目前在代码中直接分配数值。private Date m_lastActivityDate = new Date();
然而,一旦该方法到达以下位置,它会给我一个空指针:
date = (Date)formatter.parse(date.toString());
Date
和Calendar
。这些类设计不佳且过时。相反,使用来自 java.time,现代Java日期和时间API 的Instant
和ZonedDateTime
。 - Ole V.V.