Mal*_*vin 13 java calendar date
使用Dates和时有一种奇怪的怪异Calendar.要点是我想创建一个特定的日期,例如
Calendar cal = Calendar.getInstance();
cal.set(1970, 0, 1, 0, 0, 0);
Date date = cal.getTime(); 
现在的问题是:它显示了正确的日期,但是在调试时我在日期变量下看到例如"fasttime" -3599459.这使我的JUnit测试失败,因为期望的值是-3600000.似乎日历增加了541毫秒或类似于初始化时...
问题是:是不是可以简单地创建一个固定的日期而不是'我在后台'鬼功能中添加几毫秒?
Jon*_*eet 12
从set你正在调用的方法的文档:
设置字段YEAR,MONTH,DAY_OF_MONTH,HOUR,MINUTE和SECOND的值.保留其他字段的先前值.如果不需要,请先调用clear().
所以它保留了毫秒值.它不会增加几毫秒 - 它会在你打电话时占用系统时间getInstance,正如记录所做的那样.
clear()首先调用,或显式设置毫秒值.(我个人也会使用clear().我也会明确设定时区,只是为了让你更清楚你期待的时间.
或者,使用约达时间入手-这是一个多更愉快的日期/时间API.
在调用之前添加此行cal.getTime():
cal.set(Calendar.MILLISECOND, 0);
这将确保您将毫秒设置为零.
| 归档时间: | 
 | 
| 查看次数: | 987 次 | 
| 最近记录: |