Java 用hutool工具求两个时间差 结果返回 时分秒格式
时间: 2023-06-02 15:02:09 浏览: 109
可以使用hutool工具包中的DateUtil类的between方法来求两个时间的差值,并且可以设置时间差的格式为时分秒。
示例代码如下:
```java
import cn.hutool.core.date.DateUtil;
public class TimeDifference {
public static void main(String[] args) {
String startTime = "2022-01-01 00:00:00";
String endTime = "2022-01-02 12:30:30";
long between = DateUtil.between(DateUtil.parse(startTime), DateUtil.parse(endTime), DateUnit.SECOND);
String time = DateUtil.formatBetween(between * 1000, BetweenFormater.Level.SECOND);
System.out.println("两个时间的差值为:" + time);
}
}
```
运行结果为:
```
两个时间的差值为:1天12小时30分30秒
```
其中,startTime和endTime表示两个时间的字符串格式,通过DateUtil.parse方法将其转换为Date类型,
相关问题
Java 用hutool工具求两个时间差 结果返回 时分秒
可以使用Hutool工具类中的DateUtil工具类来计算两个时间之间的时间差,并将结果格式化为时分秒的形式。示例代码如下:
```java
import cn.hutool.core.date.DateUtil;
import java.util.Date;
public class TimeDiff {
public static void main(String[] args) {
Date startTime = new Date(); // 开始时间
// 一些代码逻辑
Date endTime = new Date(); // 结束时间
long diffSeconds = DateUtil.between(startTime, endTime, DateUnit.SECOND); // 计算时间差,单位为秒
String timeDiff = DateUtil.formatBetween(diffSeconds * 1000, BetweenFormater.Level.SECOND); // 格式化时间差,返回时分秒格式
System.out.println("时间差为:" + timeDiff);
}
}
```
在上面的代码中,首先使用`DateUtil.between()`方法计算出两个时间之间的时间差,单位为秒。然后使用`DateUtil.formatBetween()`方法将时间差格式化为时分秒的形式,并将结果赋值给`timeDiff`变量。最后,将`timeDiff`变量的值输出到控制台上。
Java求两个时间差 结果返回 时分秒
可以使用Java中的Date和Calendar类来计算两个时间的差值,并将结果转换为时分秒的格式。
以下是一个示例代码:
```java
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
public class TimeDifference {
public static void main(String[] args) {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String startTime = "2021-01-01 00:00:00";
String endTime = "2021-01-01 01:30:45";
try {
Date startDate = sdf.parse(startTime);
Date endDate = sdf.parse(endTime);
Calendar startCalendar = Calendar.getInstance();
startCalendar.setTime(startDate);
Calendar endCalendar = Calendar.getInstance();
endCalendar.setTime(endDate);
long diff = endCalendar.getTimeInMillis() - startCalendar.getTimeInMillis();
int hours = (int) (diff / (60 * 60 * 1000));
int minutes = (int) ((diff / (60 * 1000)) % 60);
int seconds = (int) ((diff / 1000) % 60);
System.out.println("时间差为:" + hours + "小时" + minutes + "分钟" + seconds + "秒");
} catch (Exception e) {
e.printStackTrace();
}
}
}
```
在上面的代码中,首先使用SimpleDateFormat类将字符串类型的时间转换为Date类型。然后使用Calendar类获取两个时间的毫秒数差值,最后将毫秒数转换为时分秒的格式输出。
输出结果为:时间差为:1小时30分钟45秒