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

在我的 Mac 和 Windows 机器上创建一个新的LocalDateTime使用时LocalDateTime.now(),我在 Mac 上获得了6的纳米精度,在我的 Windows 机器上获得了 3的纳米精度。两者都在运行jdk-1.8.0-172

  • 是否可以限制或提高其中一台机器的精度?

  • 为什么精度实际上不同?


Smart猫小萌
浏览 265回答 3
3回答

LEATH

我不认为您可以获得比您已经获得的精度更高的精度。如果您想降低精度以匹配其他系统的精度,这很简单(当您知道如何操作时):LocalDateTime.now(ZoneId.of("Europe/Berlin")).truncatedTo(ChronoUnit.MILLIS);您获得的精度取决于硬件、设置、操作系统以及 JVM 与所有这些的集成。众所周知,Mac 通常提供比 Windows 更好的精度(尽管我的印象是,根据 OpenJDK 问题 # JDK‑8068730,这只是 Java 9 的情况)。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java