java - nanoTime 的 System.out 不正确?

标签 java time

创建对象时,我正在我的一个实体中执行 private Timestamp timestamp = new Timestamp(System.nanoTime());

如果我 system.out 时间戳,我会得到类似的值;

2282-08-24 11:25:00.506
2286-04-16 01:47:35.882

这里有什么问题吗?

System.currentTimeMillis() 给出了正确的日期,但我需要更高的准确性。 这里可能有什么问题??

最佳答案

System.nanoTime() 是一种完全抽象的时间测量方式,它与计算机启动后的 CPU 周期数有关。它与使用纪元时间(自 1970 年以来的毫秒数)的 java.util.Date 完全无关。

您可以随意比较 System.nanoTime() 的两个不同值以获得非常准确的时间测量值(理论上可达 1 纳秒),但单独取绝对值是没有用的。

关于java - nanoTime 的 System.out 不正确?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13196114/

相关文章:

java - 如何从 xml 文档中删除节点 (Dom4J)

java - 如果类只有构造函数,我应该在类中声明变量吗?

java - 给定一个 bySelector 我怎样才能得到这个元素的 child 的选择器?

sql - 按日期时间分组忽略时间部分

javascript - 将日期字符串与 jquery 中的日期对象进行比较

time - VB6 应用时序

go - 为什么与 == 相比,具有相同日期和时间的 2 个时间结构返回 false?

ruby - 没有继承的人如何覆盖类方法并从新方法中调用原始方法?

java - 用opencv java打开视频文件

java - 金融应用中的事务隔离级别