ฉันสับสน หลังจากสะดุดนี้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:59
01:00:00