JDK 7 中使用的 ZonedDateTime 和 ChronoUnit 的替代方案
Alternative for ZonedDateTime and ChronoUnit to be used in JDK 7
我使用 JDK 8 类 ChronoUnit 和 ZonedDateTime
编写了这行代码
// if no timestamp was present, calculate difference between last and this date
timestamp = pos.getFirstDateStamp().until(datestamp, ChronoUnit.MILLIS) / (double) 1000;
但是,正在使用 JDK 7 编译分支,因此我遇到了问题,我想知道这些的替代 类。
我试过 TimeUnit.MILLISECONDS
但 until()
是 ZonedDateTime
的一部分,它似乎有问题。
后端口
大部分 java.time functionality is back-ported to Java 6 & 7 in the ThreeTen-Backport project, and further adapted to Android in the ThreeTenABP 项目。
顺便说一下,不需要像问题示例代码中那样除以 1,000。如果您想要计算一对 ZonedDateTime
对象之间经过的整秒数,请将 ChronoUnit.SECONDS
指定为您的 TemporalUnit
。
long secondsElapsed = start.until( stop , ChronoUnit.SECONDS );
我使用 JDK 8 类 ChronoUnit 和 ZonedDateTime
编写了这行代码 // if no timestamp was present, calculate difference between last and this date
timestamp = pos.getFirstDateStamp().until(datestamp, ChronoUnit.MILLIS) / (double) 1000;
但是,正在使用 JDK 7 编译分支,因此我遇到了问题,我想知道这些的替代 类。
我试过 TimeUnit.MILLISECONDS
但 until()
是 ZonedDateTime
的一部分,它似乎有问题。
后端口
大部分 java.time functionality is back-ported to Java 6 & 7 in the ThreeTen-Backport project, and further adapted to Android in the ThreeTenABP 项目。
顺便说一下,不需要像问题示例代码中那样除以 1,000。如果您想要计算一对 ZonedDateTime
对象之间经过的整秒数,请将 ChronoUnit.SECONDS
指定为您的 TemporalUnit
。
long secondsElapsed = start.until( stop , ChronoUnit.SECONDS );