public static String durationFormat(Integer totalSeconds) {
if (totalSeconds == null || totalSeconds < 1) {
return "00:01";
}
//将秒格式化成HH:mm:ss
//这里应该用Duration更合理,但它不能格式化成字符串
//而使用LocalTime,在时间超过24小时后格式化也会有问题(!)
int hours = totalSeconds / 3600; int rem = totalSeconds % 3600;
int minutes = rem / 60;
int seconds = rem % 60;
if (hours <= 0) {
return String.format("%02d:%02d", minutes, seconds);
}
return String.format("%02d:%02d:%02d", hours, minutes, seconds);
}