开发者社区> 问答> 正文

Java毫秒时间与每小时的分辨率

如何在UTC中获得java时间毫秒,忽略分钟和秒。

例如:如果是2019年10月10日凌晨1点10分59分,应该是2019年10月10日凌晨1点的时间或毫秒。

展开
收起
小六码奴 2019-10-09 20:06:08 773 0
1 条回答
写回答
取消 提交回答
  • ava.time,现代的Java日期和时间API完全具有你需要的方法:许多类都有truncatedTo满足你需求的方法。

    Instant now = Instant.now();
    System.out.println("Rough milliseconds:                        " + now.toEpochMilli());
    Instant currentWholeHour = now.truncatedTo(ChronoUnit.HOURS);
    System.out.println("Milliseconds ignoring minutes and seconds: "
            + currentWholeHour.toEpochMilli());
    

    刚运行此代码段时,输出为:

    Rough milliseconds: 1570604053787 Milliseconds ignoring minutes and seconds: 1570600800000 我清楚第一行是你不要的。我只是让你看看有什么不同。

    截断发生在UTC中。如果您所在的时区与UTC的时差不是整数小时,则结果可能与您预期的不同。此类时区的示例包括亚洲/加德满都,美国/圣约翰斯,以及某些年份的澳大利亚/洛德豪。

    截断发生在UTC中。如果您所在的时区的偏移距UTC的时间不是一个完整的小时数,那么结果可能与您预期的不同。这样的时区包括亚洲/加德满都,美国/每年的某些时候也包括澳大利亚/Lord_Howe。

    2019-10-09 20:10:19
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
Spring Cloud Alibaba - 重新定义 Java Cloud-Native 立即下载
The Reactive Cloud Native Arch 立即下载
JAVA开发手册1.5.0 立即下载