为了账号安全,请及时绑定邮箱和手机立即绑定

LocalDateTime.now() 在 Windows 和 Mac 机器上具有不同级别的精度

LocalDateTime.now() 在 Windows 和 Mac 机器上具有不同级别的精度

Smart猫小萌 2021-08-13 16:12:55
在我的 Mac 和 Windows 机器上创建一个新的LocalDateTime使用时LocalDateTime.now(),我在 Mac 上获得了6的纳米精度,在我的 Windows 机器上获得了 3的纳米精度。两者都在运行jdk-1.8.0-172。是否可以限制或提高其中一台机器的精度?为什么精度实际上不同?
查看完整描述

3 回答

?
LEATH

TA贡献1936条经验 获得超6个赞

我不认为您可以获得比您已经获得的精度更高的精度。如果您想降低精度以匹配其他系统的精度,这很简单(当您知道如何操作时):

LocalDateTime.now(ZoneId.of("Europe/Berlin")).truncatedTo(ChronoUnit.MILLIS);

您获得的精度取决于硬件、设置、操作系统以及 JVM 与所有这些的集成。众所周知,Mac 通常提供比 Windows 更好的精度(尽管我的印象是,根据 OpenJDK 问题 # JDK‑8068730,这只是 Java 9 的情况)。


查看完整回答
反对 回复 2021-08-13
  • 3 回答
  • 0 关注
  • 264 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信