Rumah >Java >javaTutorial >Bagaimanakah cara saya Menukar Milidetik kepada Format \'hh:mm:ss\' dalam Java?

Bagaimanakah cara saya Menukar Milidetik kepada Format \'hh:mm:ss\' dalam Java?

Barbara Streisand
Barbara Streisandasal
2024-11-02 11:55:30356semak imbas

How do I Convert Milliseconds to

Cara Menukar Milisaat kepada Format "hh:mm:ss": Selesai

Menukar milisaat kepada "hh:mm:ss" format boleh menjadi rumit, tetapi API TimeUnit Java menyediakan cara yang mudah untuk berbuat demikian. Selepas terjumpa percubaan yang salah dari urutan lain, mari kita terokai cara yang betul untuk menangani penukaran ini.

Pada mulanya, pendekatan yang salah yang terlibat menggunakan talian:

TimeUnit.MILLISECONDS.toMinutes(millis) - TimeUnit.MINUTES.toMinutes(TimeUnit.MILLISECONDS.toHours(millis))

Walau bagaimanapun, pengiraan ini tersilap menukar jam kepada milisaat menggunakan minit dan bukannya jam. Logik yang betul ialah:

TimeUnit.MILLISECONDS.toMinutes(millis) - TimeUnit.HOURS.toMinutes(TimeUnit.MILLISECONDS.toHours(millis))

Berikut ialah coretan kod yang diperbetulkan:

String.format("%02d:%02d:%02d", 
    TimeUnit.MILLISECONDS.toHours(millis),
    TimeUnit.MILLISECONDS.toMinutes(millis) - TimeUnit.HOURS.toMinutes(TimeUnit.MILLISECONDS.toHours(millis)), // Corrected line
    TimeUnit.MILLISECONDS.toSeconds(millis) - TimeUnit.MINUTES.toSeconds(TimeUnit.MILLISECONDS.toMinutes(millis)));   

Pengubahsuaian ini memastikan jam ditukar dengan betul menggunakan Unit Masa yang betul.

Tambahan pula , kod boleh dipermudahkan menggunakan pembahagian modulus dan bukannya penolakan:

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));

Kedua-dua pendekatan memanfaatkan TimeUnit API dan menyediakan pemformatan "hh:mm:ss" yang tepat untuk milisaat.

Atas ialah kandungan terperinci Bagaimanakah cara saya Menukar Milidetik kepada Format \'hh:mm:ss\' dalam Java?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn