时间换算-本题要求编写程序,以hh:mm:ss的格式输出某给定时间再过n秒后的时间值(超过23:59:59就从0点开始计时)java
时间: 2024-10-25 15:15:17 浏览: 30
在Java中,你可以通过`java.time`包中的`Duration`类来进行时间的计算,并结合`LocalTime`类来处理小时、分钟和秒的加减操作以及循环处理超过一天的情况。以下是一个简单的示例程序:
```java
import java.time.Duration;
import java.time.LocalTime;
public class TimeConverter {
public static void main(String[] args) {
String givenTime = "23:59:59"; // 给定时间
int secondsToAdd = 60; // 要添加的秒数
LocalTime currentTime = LocalTime.parse(givenTime);
Duration addedDuration = Duration.ofSeconds(secondsToAdd);
// 如果加上新的秒数导致时间超过23:59:59,则从0点开始计算
if (currentTime.plus(addedDuration).isAfter(LocalTime.MAX)) {
currentTime = LocalTime.of(0, 0);
}
System.out.printf("%02d:%02d:%02d", currentTime.getHour(), currentTime.getMinute(), currentTime.getSecond());
}
}
```
在这个例子中,我们首先将给定时间字符串转换成`LocalTime`对象,然后创建一个表示加秒的`Duration`。接着,我们检查加上新秒数后的时间是否超出了24小时界限,如果超出了则重置到0点。最后,我们将处理后的结果按照`hh:mm:ss`格式打印出来。
阅读全文