java中将毫秒值转换为小数点形式(几点几格式)的方法

该博客介绍了如何将毫秒转换为小时,并提供了一个Java工具类实现。通过将毫秒值除以适当的常量,计算出小时数,并使用String.format进行格式化,确保结果保留两位小数。同时,工具类处理了毫秒值超过一天的情况,避免重新计数。

例如 10000000毫秒
转换为2.7小时
方法:

10000000 % (1000 * 60 * 60 * 24) / (1000 * 60 * 60);

这个时候算出来的值是没有小数点的,我们给他加上小数点:

float a = (float)10000000 % (1000 * 60 * 60 * 24) / (1000 * 60 * 60);

得出来的结果为2.78888888
转为2.77的结果:

String time = String.format("%.2f",a)

但是这里还会出现一个问题:当毫秒值超过1000 * 60 * 60 * 24的时候就会从0开始计数了,所以我们先缩小他的范围,总结出一个工具类:

  public static String getHoursForLong(Long time) {
        float newTime;
        time = time / 1000;
        newTime = (float) time % (1000 * 60 * 60 * 24) / (1000 * 60 * 60);
        newTime = newTime * 1000;
        return String.format("%.2f", newTime);
    }
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

掉头发的王富贵

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值