私はプログラムを書いていて、理解するのが難しい振る舞いを見つけました。コードを貼り付けます
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
私は負の出力を期待していました。なぜこれが起こっているのか理解できません。