【发布时间】:2018-04-17 19:08:30
【问题描述】:
我无法将时间1352364(以秒为单位)转换为“周、日、时、秒、分”的时间戳格式。到目前为止,这是我的代码。
int timeToGrow = 1352364;
int secs = timeToGrow % 60;
int mins = (timeToGrow / 60) % 60;
int hours = (timeToGrow / 60) / 60;
int days = ((timeToGrow / 60) / 60) / 24;
int weeks = (((timeToGrow/60)/60)/24)/7;
System.out.println(weeks + " Weeks "+ days + " Days " + hours + " Hours " + mins + " Minutes " + secs + " Seconds.");
代码应该打印出2 Weeks 1 Days 15 Hours 39 Minutes 24 Seconds,但相反,打印出2 Weeks 15 Days 375 Hours 39 Minutes 24 Seconds. 我想我看到了问题,但我不知道如何解决它。请原谅我措辞不佳,但我认为小时部分包括天和周部分中的时间,不像时间是分开的,比如分和秒(再次,对不起,我不知道如何措辞)。如何更改公式以正确显示正确的时间戳?非常感谢!
【问题讨论】:
-
如果这不是作业,您应该考虑从 java 8 的 time api 中检查 Duration 类。它为此提供了一些辅助方法。
-
对于这个词的用法,这不是一个时间戳,它听起来更像是一个持续时间,一个时间量。 时间戳是标识事件发生时间的信息。