我正在尝试 Java9 功能 JShell。我无法设置浮点值:
jshell> float b = 3.5
Error:
| incompatible types: possible lossy conversion from double to float
| float b = 3.5;
jshell> float x =2
x ==> 2.0
Java 过于苛刻。
文字的类型是a ,您将其分配给 a 。 3.5
double
float
由于可能float
的 s 集必然是可能的 s 集的子集,因此double
在转换警告时会丢失精度。
为了轻松的生活,用3.5f
来表示float
文字。
但请注意,3.5
可以在 a和中精确表示,因此在这种特定情况下,错误是胡说八道。double
float
这是 Java 的行为(如现有答案中所述)。JShell 完全遵循 Java 语法和语义——这很重要,因此您不会开发不正确的代码。