可以使用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方法保留小数点后一位,不四舍五入

java 如何取String类型HHmm时间格式的两个时间段之间的时长保留小数点后一位不四舍五入

原文地址: https://www.cveoy.top/t/topic/hyj9 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录