我明确指定了 float
类型。这段代码产生了一个错误。为什么?
目前,我使用的是 scala v2.12.8
scala> val f: Float = 3.0
<console>:11: error: type mismatch;
found : Double(3.0)
required: Float
val f: Float = 3.0
最佳答案
使用以下代码:
val f: Float = 3f
如果不添加f
后缀,该变量将被视为double。
这在 Java 中也是一样的,因为 Double
和 Float
包装了 Java 的 double
和 float
> 分别:
jshell> float f = 3.0
| Error:
| incompatible types: possible lossy conversion from double to float
| float f = 3.0;
| ^-^
jshell> float f = 3.0f
f ==> 3.0
关于java - 将文字分配给 Float 时出现类型不匹配错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60472874/