ฉันสับสน หลังจากสะดุดนี้hh:mm:ssด้ายผมพยายามที่จะคิดออกว่าจะจัดรูปแบบการจับเวลาที่มีรูปแบบ
นี่คือความพยายามของฉัน -
//hh:mm:ss
String.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)));
ดังนั้นเมื่อฉันพยายามค่าเหมือน3600000msที่ฉันได้รับซึ่งเป็นสิ่งที่ผิดเพราะมันควรจะเป็น01:59:00 01:00:00เห็นได้ชัดว่ามีบางอย่างผิดปกติกับตรรกะของฉัน แต่ในขณะนี้ฉันไม่เห็นว่ามันคืออะไร!
ใครช่วยได้บ้าง
แก้ไข -
ซ่อมมัน. นี่เป็นวิธีที่เหมาะสมในการจัดรูปแบบมิลลิวินาทีhh:mm:ssรูปแบบ -
//hh:mm:ss
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))));
TimeUnit.MINUTES.toMinutes(TimeUnit.MILLISECONDS.toHours(millis))ปัญหาที่เกิดขึ้นเป็นอย่างนี้ มันควรจะเป็นแบบนี้TimeUnit.HOURS.toMinutes(TimeUnit.MILLISECONDS.toHours(millis))แทน
00:59:5901:00:00