Java 用 0 双重初始化

Java double initilization with 0

我最近遇到一些代码,其中 double 按以下方式初始化:

double nb = 0.;

已经有人问过一个非常相似的问题 here 但没有涵盖这个具体案例。这种初始化有什么好处或特殊行为吗?

0. 是完全合法的 double,并且与 0.0

具有相同的值

您可以使用 jshell

进行测试
jshell> 0. == 0.0
 ==> true

Here 是如何表示浮点数(即 floatdouble)的正式规范 literal

要点是这些都是表示 double

的有效方法
1e1
2.
.3
0.0
3.14
1e-9d
1e137