Java 计算两个 HH:mm 时间段之间的时长(保留小数点后一位)
可以使用java.time.LocalTime 类来处理时间,并使用java.time.Duration 类来计算时间差。下面是一个示例代码:
import java.time.Duration;
import java.time.LocalTime;
import java.time.format.DateTimeFormatter;
public class TimeDuration {
public static void main(String[] args) {
String time1 = '12:30';
String time2 = '14:45';
// 将时间字符串解析为LocalTime对象
LocalTime localTime1 = LocalTime.parse(time1, DateTimeFormatter.ofPattern('HH:mm'));
LocalTime localTime2 = LocalTime.parse(time2, DateTimeFormatter.ofPattern('HH:mm'));
// 计算时间差
Duration duration = Duration.between(localTime1, localTime2);
// 将时间差转换为小时数,保留小数点后一位,不四舍五入
double hours = duration.toMinutes() / 60.0;
hours = Math.floor(hours * 10) / 10.0;
System.out.println('时间差:' + hours + '小时');
}
}
在上述代码中,首先使用DateTimeFormatter将时间字符串解析为LocalTime对象。然后使用Duration.between方法计算两个时间之间的时间差。最后,将时间差转换为小时数,并使用Math.floor方法保留小数点后一位,不四舍五入。
原文地址: https://www.cveoy.top/t/topic/o04d 著作权归作者所有。请勿转载和采集!