0
我写一个程序,并发现了一个行为,是艰难的,我听不懂。 所以粘贴代码java.util.date和长期意外的行为
public class test {
public static void main(String args[]) throws ParseException {
DateFormat formatter = new SimpleDateFormat("hh:mm");
Date systemTime2 = formatter.parse("10:36");
Date systemTime1 = formatter.parse("12:00");
System.out.println(getMinutesDifference(systemTime2, systemTime1));
;
}
private static Long getMinutesDifference(Date upperTime, Date lowerTime) {
System.out.println(upperTime.getTime());
System.out.println(lowerTime.getTime());
return (upperTime.getTime() - lowerTime.getTime())/(1000 * 60);
}
}
现在我得到的输出是
66960000
28800000
636
我期待一个负输出。我无法理解这是为什么会发生。
哎呀,这是一个令人尴尬的错误。 –
不要尴尬。 SimpleDateFormat不是'简单' - 这个名字很具误导性。 :-) – Rob