Java程序计算两个时间段之间的差异
要理解此示例,你应该具备以下 Java 编程主题的知识:
示例:计算两个时间段之间的差异
public class Time {
int seconds;
int minutes;
int hours;
public Time(int hours, int minutes, int seconds) {
this.hours = hours;
this.minutes = minutes;
this.seconds = seconds;
}
public static void main(String[] args) {
// 创建 Time 类的对象
Time start = new Time(8, 12, 15);
Time stop = new Time(12, 34, 55);
Time diff;
// 调用 difference 方法
diff = difference(start, stop);
System.out.printf("时间差异: %d:%d:%d - ", start.hours, start.minutes, start.seconds);
System.out.printf("%d:%d:%d ", stop.hours, stop.minutes, stop.seconds);
System.out.printf("= %d:%d:%d\n", diff.hours, diff.minutes, diff.seconds);
}
public static Time difference(Time start, Time stop)
{
Time diff = new Time(0, 0, 0);
// 如果开始的秒数大于结束的秒数
// 将结束的分钟转换为秒
// 并将秒数加到结束的秒数上
if(start.seconds > stop.seconds){
--stop.minutes;
stop.seconds += 60;
}
diff.seconds = stop.seconds - start.seconds;
// 如果开始的分钟大于结束的分钟
// 将结束的小时转换为分钟
// 并将分钟数加到结束的分钟上
if(start.minutes > stop.minutes){
--stop.hours;
stop.minutes += 60;
}
diff.minutes = stop.minutes - start.minutes;
diff.hours = stop.hours - start.hours;
// 返回时间差
return(diff);
}
}
输出
时间差异: 12:34:55 - 8:12:15 = 4:22:40
在上述程序中,我们创建了一个名为 Time
的类,它有三个成员变量:hours
, minutes
和 seconds
。顾名思义,它们分别存储给定时间的小时、分钟和秒数。
Time
类有一个构造函数,用于初始化 hours
, minutes
和 seconds
的值。
我们还创建了一个静态函数 difference
,它接受两个 Time
变量作为参数,找出差异并将其作为 Time
类返回。