可以使用LocalTime类和Duration类来计算两个时间段之间的时长。

首先,将String类型的时间转换为LocalTime对象,可以使用LocalTime.parse()方法。

然后,使用Duration.between()方法计算两个LocalTime对象之间的时长。

最后,通过toHours()方法将时长转换为小时数,再除以0.5,可以得到以0.5小时为单位的时长。

以下是一个示例代码:

import java.time.Duration;
import java.time.LocalTime;

public class Main {
    public static void main(String[] args) {
        String time1 = "08:30";
        String time2 = "12:45";

        LocalTime localTime1 = LocalTime.parse(time1);
        LocalTime localTime2 = LocalTime.parse(time2);

        Duration duration = Duration.between(localTime1, localTime2);

        double hours = duration.toHours() / 0.5;

        System.out.println("时长:" + hours + "H");
    }
}

输出结果:

时长:8.3H

注意,这里没有进行四舍五入,如果需要保留一位小数并进行四舍五入,可以使用DecimalFormat类来格式化输出

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

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

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