gpt4 book ai didi

Java如何获取当前时间的毫秒部分而不是从1970年开始

转载 作者:行者123 更新时间:2023-11-30 08:43:40 26 4
gpt4 key购买 nike

我正在使用 System.currentTimeMillis() 获取自 1970 年以来的毫秒数,我可以使用以下方法获取当前的小时、分钟和秒数:

Long currTimeInMilliSec =   System.currentTimeMillis()
int h = (((currTimeInMilliSec / 1000) / 3600 ) % 24)
int m = (((currTimeInMilliSec / 1000) / 60) % 60)
int s = ((currTimeInMilliSec / 1000) % 60)

我如何计算当前时间的毫秒数(不是从 1970 年开始),因为如果我使用 int ms = currentTimeInMilliSec 那将是自 1970 年以来的毫秒数。

注意:由于某些原因,我只需要使用 currentTimeMillis 函数来计算,我不想使用其他函数或外部库。

最佳答案

使用 currentTimeInMilliSec % 1000

您也可以这样想:它的工作原理与 int m = totalMinutes % 60 工作的原因相同,而且您已经发现这是有效的。

但更详细的解释如下:N % M 给你一个从0M - 1 的数字。因此,您将始终获得从 0999 的毫秒数。每次您的 currentTimeInMilliSec 前进 1,这个数字也会前进 1,但如果这个数字超过 999,它就会转向 0 ,这正是您想要的行为。

关于Java如何获取当前时间的毫秒部分而不是从1970年开始,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34117860/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com