试图执行但日期比较:的Java的SimpleDateFormat转换
date1=new SimpleDateFormat("yy-MM-dd HH").parse("12-03-25 02")
等于
date2=new SimpleDateFormat("yy-MM-dd HH").parse("12-03-25 03")
问题是什么?以date1.getHour
我得到3
。
想法,欢迎
试图执行但日期比较:的Java的SimpleDateFormat转换
date1=new SimpleDateFormat("yy-MM-dd HH").parse("12-03-25 02")
等于
date2=new SimpleDateFormat("yy-MM-dd HH").parse("12-03-25 03")
问题是什么?以date1.getHour
我得到3
。
想法,欢迎
2012年3月的第25是天哪里夏令时开关做的是许多国家,通常在凌晨2点。所以2AM和3AM在今天同一时间在您的语言环境中。这就是你看到这个的原因。
那么如何处理这样的问题呢? (与我的国家检查,其行军25) – 2013-03-15 16:52:32
良好的捕获。对于其他人:您可以在构造SimpleDateFormat之前通过调用'TimeZone.setDefault(TimeZone.getTimeZone(“CET”));'来确认。 – matts 2013-03-15 16:57:27
这不是问题。结果是正确的。 2AM和3AM代表同一时刻,因此打印2或3无关紧要。 – 2013-03-15 16:59:35
我为'date1.getHours()'得到'2'。必须有一些其他代码影响你的结果。 – matts 2013-03-15 16:37:02
无法在JDK 6上重现,显示实际的程序? – Affe 2013-03-15 16:37:21
我也在jdk中获得2 7 – Pragnani 2013-03-15 16:37:53