java 计算两个Date时间差,格式为多少小时多少分多少秒
时间: 2023-12-14 14:38:23 浏览: 84
可以使用Java 8中的Duration类来计算两个日期之间的时间差,然后根据需要格式化输出。
以下是一个示例代码:
```java
import java.time.Duration;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
public class DateUtils {
public static void main(String[] args) {
LocalDateTime start = LocalDateTime.of(2021, 9, 1, 10, 0, 0);
LocalDateTime end = LocalDateTime.of(2021, 9, 1, 12, 30, 0);
Duration duration = Duration.between(start, end);
long hours = duration.toHours();
long minutes = duration.toMinutes() % 60;
long seconds = duration.getSeconds() % 60;
String formattedDuration = String.format("%d小时%d分%d秒", hours, minutes, seconds);
System.out.println(formattedDuration);
}
}
```
输出结果为:`2小时30分0秒`。
在上面的代码中,我们首先创建了两个`LocalDateTime`对象来表示起始时间和结束时间。然后,我们使用`Duration.between()`方法来计算它们之间的时间差。
接下来,我们将时间差转换为小时、分钟和秒,并使用`String.format()`方法将它们格式化成所需的字符串形式。
最后,我们将格式化的字符串输出到控制台。
阅读全文