写项目遇到一个问题,前端传的是个4,但需要存进去变成00:00:04。这种时间格式,当然,秉着代码能少写就少写的风格,一行代码足矣。
String timeFormat = String.format("%02d:%02d:%02d", shijian / 3600, (shijian % 3600) / 60, shijian % 60);
package Lx;
public class ClassName {
public static void main(String[] args) {
int shijian = 4;
String timeFormat = String.format("%02d:%02d:%02d", shijian / 3600, (shijian % 3600) / 60, shijian % 60);
System.out.println("时间4 = "+timeFormat);
int shijian2 = 100;
String timeFormat2 = String.format("%02d:%02d:%02d", shijian2 / 3600, (shijian2 % 3600) / 60, shijian2 % 60);
System.out.println("时间100 = "+timeFormat2);
}
}
打印结果:
在上述代码中,我们使用 String.format()
方法将整数 4
格式化为 HH:mm:ss
的字符串。这里的 %02d
表示使用两位数字的十进制格式,不足两位则用前导零补齐。
解释一下:
4 / 3600
得到小时的部分,这里结果为0
,表示不足一小时。(4 % 3600) / 60
得到分钟的部分,这里结果为0
,表示不足一分钟。4 % 60
得到秒钟的部分,这里结果为4
。
使用这个一行代码,你将得到 00:00:04
的字符串结果。