为什么如果我将日期从毫秒转换为天,然后再从天转换为毫秒,此日期会更改?
例如:
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
Date date = format.parse("2012-06-02");
System.out.println(date);
Long dateAsDays = TimeUnit.MILLISECONDS.toDays(date.getTime());
System.out.println(
new Date(
TimeUnit.DAYS.toMillis(dateAsDays)
) );
将打印:
2012 年 6 月 2 日星期六 00:00:00 GMT+03:00
2012 年 6 月 1 日星期五 03:00:00 GMT+03:00
如何在此转换中保存月份中的某一天?为什么这段代码不能正常工作?