在Windows和Ubuntu Linux上使用Java版本1.5.0_06:
每当我将日期添加到日期"2008/10/05 00:00:00"时,似乎错误地添加了额外的小时.
即:在午夜到2008/10/05 00:00:00加入360分钟到达2008/10/05 06:00:00
但它是在2008/10/05 07:00:00到达
在完全令人费解的是,这只有当这一天是2008年10月5日,所有其他的日子,我试图正确地执行分钟的添加情况.
我疯了还是这是Java中的一个错误?
SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
try {
String date = "2008/10/05 00:00:00";
int minutesToAdd = 360; // 6 hrs
Calendar cal = Calendar.getInstance();
cal.setTime(sdf.parse(date));
cal.add(Calendar.MINUTE, minutesToAdd);
System.out.println(cal.getTime());
} catch (ParseException e) {}
Run Code Online (Sandbox Code Playgroud)