小编8hZ*_*WKA的帖子

Instant 和 Date 之间的转换是否从 Java 8 更改为 11?

从 Java 8 更新到 11 时,我注意到以下差异,这可能会严重破坏逻辑流程:

鉴于以下代码

final Instant now = Instant.now();
System.out.println(now.minusNanos(1).isBefore(now));
System.out.println(Date.from(now.minusNanos(1)).before(Date.from(now)));
Run Code Online (Sandbox Code Playgroud)

Java 8 (corretto 1.8.0_232) 上执行打印:

true
true
Run Code Online (Sandbox Code Playgroud)

相反,Java 11 (corretto 11.0.0.5_10) 打印:

true
false
Run Code Online (Sandbox Code Playgroud)

所以我的问题是:为什么会发生这种情况,它是否记录在某处?

java java-8 java-11

4
推荐指数
1
解决办法
58
查看次数

标签 统计

java ×1

java-11 ×1

java-8 ×1