Dee*_*pak 2 java floating-point double
所以我明白,如果我声明一个长变量,我需要在数字的末尾添加一个 L。
long x = 123L;
Run Code Online (Sandbox Code Playgroud)
与 float 类型相同,我需要在变量末尾添加 F。
float x = 1.1F;
Run Code Online (Sandbox Code Playgroud)
但我想知道为什么在这两种情况下它的做法不同?我的意思是如果我声明一个 int 或任何其他数据类型,它就完成了
int x = 1;
Run Code Online (Sandbox Code Playgroud)
为什么这两种数据类型的声明是以某种方式完成的(对于 long 和 float 类型)。我知道它是这样做的,我只是想了解为什么要这样做?
不同之处在于字面值。根据Primitive values,文字数值属于 forint和double类型。
来自Java 语言规范。第 3 章词法结构。3.10 文字:
long如果以 ASCII 字母L或l(ell)为后缀,则为整数文字类型;否则它是类型int(§4.2.1)(……)
如果浮点文字
float以 ASCII 字母F或为后缀,则它属于类型f。否则它的类型是double并且可以选择后缀为 ASCII 字母D或d(第4.2.3 节)。
| 归档时间: |
|
| 查看次数: |
2519 次 |
| 最近记录: |