第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何將毫秒轉(zhuǎn)換為“hh:mm:ss”格式?

如何將毫秒轉(zhuǎn)換為“hh:mm:ss”格式?

慕的地6264312 2019-07-30 14:16:24
如何將毫秒轉(zhuǎn)換為“hh:mm:ss”格式?我糊涂了。在絆倒這個線程之后,我試圖弄清楚如何格式化具有該格式的倒數(shù)計時器hh:mm:ss。這是我的嘗試 -//hh:mm:ssString.format("%02d:%02d:%02d",      TimeUnit.MILLISECONDS.toHours(millis),     TimeUnit.MILLISECONDS.toMinutes(millis) -      TimeUnit.MINUTES.toMinutes(TimeUnit.MILLISECONDS.toHours(millis)),     TimeUnit.MILLISECONDS.toSeconds(millis) -      TimeUnit.MINUTES.toSeconds(TimeUnit.MILLISECONDS.toMinutes(millis)));所以,當(dāng)我嘗試一個類似的值3600000ms,我得到01:59:00,這是錯誤的,因為它應(yīng)該是01:00:00。顯然我的邏輯有問題,但此刻,我看不出它是什么!有人可以幫忙嗎?編輯 -固定它。這是格式化毫秒hh:mm:ss格式的正確方法-//hh:mm:ssString.format("%02d:%02d:%02d",      TimeUnit.MILLISECONDS.toHours(millis),     TimeUnit.MILLISECONDS.toMinutes(millis) -      TimeUnit.HOURS.toMinutes(TimeUnit.MILLISECONDS.toHours(millis)),     TimeUnit.MILLISECONDS.toSeconds(millis) -      TimeUnit.MINUTES.toSeconds(TimeUnit.MILLISECONDS.toMinutes(millis))));問題是這個TimeUnit.MINUTES.toMinutes(TimeUnit.MILLISECONDS.toHours(millis))。應(yīng)該是這樣的TimeUnit.HOURS.toMinutes(TimeUnit.MILLISECONDS.toHours(millis))。
查看完整描述

3 回答

?
開心每一天1111

TA貢獻(xiàn)1836條經(jīng)驗 獲得超13個贊

這種通用方法非常簡單:

public static String convertSecondsToHMmSs(long seconds) {
    long s = seconds % 60;
    long m = (seconds / 60) % 60;
    long h = (seconds / (60 * 60)) % 24;
    return String.format("%d:%02d:%02d", h,m,s);}


查看完整回答
反對 回復(fù) 2019-07-30
?
手掌心

TA貢獻(xiàn)1942條經(jīng)驗 獲得超3個贊

如果您使用的是apache commons:

DurationFormatUtils.formatDuration(timeInMS, "HH:mm:ss,SSS");


查看完整回答
反對 回復(fù) 2019-07-30
?
FFIVE

TA貢獻(xiàn)1797條經(jīng)驗 獲得超6個贊

真的很親密:

String.format("%02d:%02d:%02d", TimeUnit.MILLISECONDS.toHours(millis),TimeUnit.MILLISECONDS.toMinutes(millis) -  TimeUnit.HOURS.toMinutes(TimeUnit.MILLISECONDS.toHours(millis)), // The change is in this lineTimeUnit.MILLISECONDS.toSeconds(millis) - TimeUnit.MINUTES.toSeconds(TimeUnit.MILLISECONDS.toMinutes(millis)));

您使用分鐘而不是小時將小時數(shù)轉(zhuǎn)換為毫秒數(shù)

順便說一句,我喜歡你使用的TimeUnitAPI :)

這是一些測試代碼:

public static void main(String[] args) throws ParseException {
    long millis = 3600000;
    String hms = String.format("%02d:%02d:%02d", TimeUnit.MILLISECONDS.toHours(millis),
            TimeUnit.MILLISECONDS.toMinutes(millis) - TimeUnit.HOURS.toMinutes(TimeUnit.MILLISECONDS.toHours(millis)),
            TimeUnit.MILLISECONDS.toSeconds(millis) - TimeUnit.MINUTES.toSeconds(TimeUnit.MILLISECONDS.toMinutes(millis)));
    System.out.println(hms);}

輸出:

01:00:00

我意識到通過使用模數(shù)除法而不是減法可以大大簡化上面的代碼:

String hms = String.format("%02d:%02d:%02d", TimeUnit.MILLISECONDS.toHours(millis),
    TimeUnit.MILLISECONDS.toMinutes(millis) % TimeUnit.HOURS.toMinutes(1),
    TimeUnit.MILLISECONDS.toSeconds(millis) % TimeUnit.MINUTES.toSeconds(1));

仍然使用TimeUnit所有魔術(shù)值的API,并提供完全相同的輸出。


查看完整回答
反對 回復(fù) 2019-07-30
  • 3 回答
  • 0 關(guān)注
  • 1347 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號