在 Java 中将毫秒转换为人类可读的时间
准确测量经过的时间在许多编程场景中至关重要。 System.currentTimeMillis() 方法提供与当前时间相对应的基于毫秒的时间戳。然而,以人类可以轻松理解的格式呈现此时间戳需要转换。本文探讨了将毫秒转换为人类可读格式(如“XX 分钟,XX 秒”)的最佳方法。
Java 的 TimeUnit 类
java.util.并发.TimeUnit类提供了一种将毫秒转换为人类可读时间单位的便捷方法。它提供了静态方法,例如 toMinutes 和 toSeconds 来执行必要的计算。要使用此方法,您可以编写以下代码:
String.format("%d min, %d sec", TimeUnit.MILLISECONDS.toMinutes(millis), TimeUnit.MILLISECONDS.toSeconds(millis) - TimeUnit.MINUTES.toSeconds(TimeUnit.MILLISECONDS.toMinutes(millis)) );
为单位数字值添加前导零
如果您想确保单位数字值显示前导零(例如,“09 分钟”而不是“9 分钟”),只需使用以下命令code:
String.format("%02d min, %02d sec", TimeUnit.MILLISECONDS.toMinutes(millis), TimeUnit.MILLISECONDS.toSeconds(millis) - TimeUnit.MINUTES.toSeconds(TimeUnit.MILLISECONDS.toMinutes(millis)) );
没有 TimeUnit 的自定义计算
如果 TimeUnit 不可用(例如,在较旧的 Android 版本上),您可以执行毫秒到时间的转换手动使用以下方程:
int seconds = (int) (milliseconds / 1000) % 60 ; int minutes = (int) ((milliseconds / (1000*60)) % 60); int hours = (int) ((milliseconds / (1000*60*60)) % 24);
然后您可以组合这些值来创建所需的时间
结论
通过利用 java.util.concurrent.TimeUnit 类或自定义计算,您可以轻松地将毫秒转换为 Java 中人类可读的格式。这使您能够以准确且易于理解的方式显示经过的时间。
以上是如何在 Java 中将毫秒转换为人类可读的时间格式?的详细内容。更多信息请关注PHP中文网其他相关文章!