在 Java 上遇到以下表达式,我不知道“1d”是什么意思(r
是一个整数)。还有options对于多头, double ......它们是什么以及它们的用途是什么?
double y = r / (Integer.MAX_VALUE + 1d);
谢谢!
最佳答案
后缀d
表示double
,后缀f
表示float
。
可以用八种方式表示双文字:1.0
、1d
、1D
、1.0d
、1.0D
、1.
、1.d
、1.D
而不是真正的双重文字:(双)1
。在最后一个示例中,1
是字面量,它是一个 int
但后来我将其转换为 double
。
在您的表达式中:double y = r/(Integer.MAX_VALUE + 1d);
括号增加表达式的优先级,因此 (Integer.MAX_VALUE + 1d)
将是首先评估,因为这是 intValue + doubleValue
结果将是类型 double
所以 r/(Integer.MAX_VALUE + 1d)
也将是一个 double
。
关于Java:什么是 1d?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27368422/