
在
f表明它是一个浮点文字,不是双字面它并没有一个特定的技术名称,我知道(这将暗示以其它方式)
-我倾向于把它称为“字母后缀”如果我需要参考具体来说,尽管有点武断!
例如:
float f = 3.14f; //Compilesfloat f = 3.14; //Doesn't compile, because you're trying to put a double literal in a float without a cast.
您当然可以:
float f = (float)3.14;
…几乎可以完成同一件事,但是F是一种更简洁,更简洁的表示方式。
为什么选择double作为默认值而不是float?好吧,如今,在99%的情况下,浮点数加倍的内存要求已不再是问题,而且它们提供的额外准确性在很多情况下都是有益的-
因此,您可以说这是明智的默认设置。
请注意,您还可以通过
d在末尾也添加a来将小数文字显式显示为双精度:
double d = 3.14d;
…但是因为无论如何它都是双精度值,所以没有任何效果。有人可能会为它辩护,主张更清楚地表示您的字面量类型,但是我个人认为这只会使代码混乱(除非您周围有很多浮动字面量,并且您要强调此字面量的确意味着是双精度字面量。
,而省略f不仅仅是一个错误。)
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)