Java将毫秒时长转换为带单位的时间(天,小时,分钟,秒)

 // 毫秒时间戳转换为日、时、分、秒
    public static String timeStampToDhms(long milliseconds) {
        long day = TimeUnit.MILLISECONDS.toDays(milliseconds);
        long hours = TimeUnit.MILLISECONDS.toHours(milliseconds) - TimeUnit.DAYS.toHours(TimeUnit.MILLISECONDS.toDays(milliseconds));
        long minutes = TimeUnit.MILLISECONDS.toMinutes(milliseconds) - TimeUnit.HOURS.toMinutes(TimeUnit.MILLISECONDS.toHours(milliseconds));
        long seconds = TimeUnit.MILLISECONDS.toSeconds(milliseconds) - TimeUnit.MINUTES.toSeconds(TimeUnit.MILLISECONDS.toMinutes(milliseconds));
        StringBuilder sb = new StringBuilder();
        if (day != 0) {
            sb.append(day + "天");
        }
        sb.append(hours + "小时");
        sb.append(minutes + "分");
        sb.append(seconds + "秒");
        return sb.toString();
    }

    public static void main(String[] args) {
        long time = 2131412421;

        System.out.println(timeStampToDhms(time));
    }
 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 可以先将毫秒数转换为秒数,再将秒数转换:分:秒的形式输出。 具体的转换方法如下: 1. 将毫秒数除以1000,得到秒数。 2. 将秒数分别除以3600、60和1,得到小时数、分钟数和秒数。 3. 将小时数、分钟数和秒数按照:分:秒的格式输出即可。 示例代码如下: ```python ms = int(input()) # 输入毫秒数 seconds = ms // 1000 # 毫秒数转换为秒数 hours = seconds // 3600 # 计算小时数 minutes = (seconds % 3600) // 60 # 计算分钟数 seconds = seconds % 60 # 计算秒数 print("{:02d}:{:02d}:{:02d}".format(hours, minutes, seconds)) # 输出:分:秒 ``` 注意,这里使用了字符串格式化的方法,将小时数、分钟数和秒数转换为两位数的形式,不足两位的前面补0。 ### 回答2: 要将一个整型数据表示的毫秒数转换:分:秒的形式,可以使用以下方法: 1. 首先,将毫秒数除以1000得到秒数。 2. 然后,将秒数除以60得到分钟数。 3. 最后,将分钟数除以60得到小时数。 具体步骤如下: 1. 定义一个整型变量表示毫秒数,例如millis。 2. 将输入的整型数据赋值给millis。 3. 将millis除以1000得到秒数,将余数赋值给变量seconds。 4. 将秒数除以60得到分钟数,将余数赋值给变量minutes。 5. 将分钟数除以60得到小时数,将余数赋值给变量hours。 6. 将小时数、分钟数和秒数格式化为:分:秒的形式,例如"%02d:%02d:%02d",并将结果赋值给一个字符串变量result。 7. 将result输出。 以下是一个示例代码: ```java import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.print("请输入毫秒数:"); long millis = scanner.nextLong(); long seconds = millis / 1000 % 60; long minutes = millis / 1000 / 60 % 60; long hours = millis / 1000 / 60 / 60; String result = String.format("%02d:%02d:%02d", hours, minutes, seconds); System.out.println(result); } } ``` ### 回答3: 首先,我们可以将输入的毫秒数除以1000来得到秒数。然后,使用秒数除以60来得到分钟数。最后,使用分钟数除以60来得到小时数。同,我们需要对分钟数和秒数进行取余运算来获得剩余的分钟数和秒数。 下面是一个示例的代码来实现这个转换过程: ```python def convert_milliseconds(millis): # 计算秒数 seconds = millis // 1000 # 计算分钟数 minutes = seconds // 60 # 计算小时数 hours = minutes // 60 # 计算剩余的分钟数 minutes = minutes % 60 # 计算剩余的秒数 seconds = seconds % 60 # 返回转换后的结果 return f"{hours:02d}:{minutes:02d}:{seconds:02d}" ``` 这样,当我们调用`convert_milliseconds(5000)`,将返回`00:00:05`,即5秒钟。 当我们调用`convert_milliseconds(86400000)`,将返回`24:00:00`,即24小时。 希望以上回答能对您有所帮助!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值