ง่ายกว่าใน Java 9:
Duration elapsedTime = Duration.ofMillis(millisDiff );
String humanReadableElapsedTime = String.format(
"%d hours, %d mins, %d seconds",
elapsedTime.toHours(),
elapsedTime.toMinutesPart(),
elapsedTime.toSecondsPart());
0 hours, 39 mins, 9 seconds
นี้ผลิตสตริงเหมือน
หากคุณต้องการปัดเศษเป็นวินาทีทั้งก่อนการฟอร์แมต:
elapsedTime = elapsedTime.plusMillis(500).truncatedTo(ChronoUnit.SECONDS);
ออกจากชั่วโมงถ้าพวกเขาเป็น 0:
long hours = elapsedTime.toHours();
String humanReadableElapsedTime;
if (hours == 0) {
humanReadableElapsedTime = String.format(
"%d mins, %d seconds",
elapsedTime.toMinutesPart(),
elapsedTime.toSecondsPart());
} else {
humanReadableElapsedTime = String.format(
"%d hours, %d mins, %d seconds",
hours,
elapsedTime.toMinutesPart(),
elapsedTime.toSecondsPart());
}
39 mins, 9 seconds
ตอนนี้เราสามารถมีตัวอย่างเช่น
หากต้องการพิมพ์นาทีและวินาทีโดยมีศูนย์นำหน้าเพื่อให้ตัวเลขสองหลักเสมอเพียงแค่ใส่02
ตัวระบุรูปแบบที่เกี่ยวข้องดังนี้:
String humanReadableElapsedTime = String.format(
"%d hours, %02d mins, %02d seconds",
elapsedTime.toHours(),
elapsedTime.toMinutesPart(),
elapsedTime.toSecondsPart());
0 hours, 39 mins, 09 seconds
ตอนนี้เราสามารถมีตัวอย่างเช่น