在Java上遇到以下表达式,我不知道“ 1d”是什么意思(r
是整数)。还有多头,双头...的选择,它们的用途是什么?
double y = r / (Integer.MAX_VALUE + 1d);
谢谢!
Sufixd
后数的手段double
,sufixf
手段float
。
您可以在八种方式表达双文字:1.0
,1d
,1D
,1.0d
,1.0D
,1.
,1.d
,1.D
而不是真正的双文字:(double)1
。在最后一个示例中1
是字面量,它是一个,int
但随后我将其转换为double
。
在您的表达式中:double y = r / (Integer.MAX_VALUE + 1d);
括号增加了表达式的优先级,因此(Integer.MAX_VALUE + 1d)
将首先对进行评估,因为这是intValue + doubleValue
结果的类型,double
所以r / (Integer.MAX_VALUE + 1d)
也将是double
。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句