Instant.now
Java 9带来了新的Clock实现,可以用比Java 8 Clock的milliseconds功能更精细的方式捕获当前时间。
Instant instant=Instant.now (;
让我弄清楚。 所有版本的Java instant类都可以将值保存在nanoseconds中。 但是,捕获的当前时间仅限于版本8的毫秒。
应该研究现在计算机设备的硬件时钟功能。 我想你会发现现在的传统硬件无法准确跟踪纳秒时间
在MacintoshSierra上使用Oracle JDK 9.0.4时,发现当前时间是在microseconds中获取的,有6个小数位数。
system.nano time (isn’tanaccuratesourceoftime
不,准确性不是问题。 问题是(System.nanoTime ) )被设计为跟踪经过的时间而不是当前的日期和时间。 此功能仅跟踪从未记录的起点开始的纳秒数。
另外,如上所述,我们不是在谈论单纳秒的增加,而是因为我们不具备现在的传统计算机硬件
关于java.time
有关详细信息,请参阅Oracle Tutorial .并在Stack Overflow中搜索许多示例和说明。 规格为JSR 310。
可以直接与数据库交换java.time对象。 使用符合JDBC 4.2或更高版本的JDBC驱动程序。 既不需要字符串,也不需要java.sql.*类。
从哪里获得java.time类?
内置。
部分标准Java API,带捆绑实现。
Java 9添加了一些小功能和修复。
大多数java.time功能反向移植到Java67,6月位于ThreeTen-Backport。
实现新版本的Android捆绑java.time类。
对于初期的Android(26 ),ThreeTenABP项目采用了ThreeTen-Backport (参见前述).How to use ThreeTenABP…。
ThreeTen-Extra项目使用其他类扩展了java.time。 这个项目是今后可能添加到java.time中的试验场。 可以找到有用的类,例如Interval、YearWeek、YearQuarter和more。