为什么我必须将f加到变量float f = 5.67f的值?

Mil*_*ita 3 java

为什么我必须加入f变量f

float f =5.67f;
Run Code Online (Sandbox Code Playgroud)

我知道double变量可以接受更多的抽象数字float 但是为什么我必须在我已经说过变量f之后添加5.67float

Mar*_*oun 5

当我已经说过它是浮点变量时

你知道,编译器没有 - 它将尝试进行隐式转换double,float因为默认情况下会5.67被解释为a double.


当你写float f = 5.67;的编译器不知道5.67float和不是double,因为默认类型5.67double!

float比精确double这样的隐式转换不能进行,并且会产生一个错误" 类型不匹配:不能从双转换为浮动 ".