计算 Java 中两次之间的差异

Calculate difference between two times in Java

我有疑问。我需要在 Java 中创建一个程序,例如我输入 2 次 = 14 25 127 50 25,然后它减去 6:34:47。如果不使用 Java 中的任何 API class,我该怎么做?我只能使用 Scanner 和 if 语句。我尝试了类似下面的方法,但显然它不起作用,因为例如它确实 12-25 = -13 的秒数,它应该是 47.

int seconds = seconds2 - seconds1;
int minutes = minutes2 - minutes1;
int hours = hours2 - hours1;

这行不通。

你听说过结转吗?

如果 diff 值小于 0,则加 60 并从下一个更高的值中减去 1。

7 50 2514 25 12:
hour = 14 - 7 = 7
minute = 25 - 50 = -25
second = 12 - 25 = -13

所以加上 60 秒,减去 1 分钟:
second = -13 + 60 = 47
minute = -25 - 1 = -26

所以加上 60 分钟,减去 1 小时:
minute = -26 + 60 = 34
hour = 7 - 1 = 6

结果:
hour = 6
minute = 34
second = 47

6 34 47