我对编程很新.我有以下代码:
float f = 18.45f;
这很好用.如果我改为:
float f = 18.45;
java说这是错误:
error: possible loss of precision
但它的双重选择.但是我再次面临同样的问题.
为什么java强迫我这样做,但不是以双倍的情况?
解决方法
在Java中,18.45是一种包含64位的双数据类型. float数据类型最多只能容纳32位.添加额外的f使它成为一个浮点数(float literal).
有关详细信息,请参见Primitive Data Types.