我正在写一个程序,并发现了一个让我难以理解的行为。 所以粘贴代码
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
我期待负面的产出。我无法理解为什么会发生这种情况。
答案 0 :(得分:3)
以您的格式,AM / PM(1-12)中的“hh”小时。我不清楚你究竟想要完成什么,但也许使用“HH”(白天的小时 - 0-23)可能会给你你想要的结果。