JShell可能从double转换为float

时间:2016-12-20 09:42:18

标签: java java-9 jshell

我正在尝试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

2 个答案:

答案 0 :(得分:4)

Java过于苛刻。

文字 3.5类型double,您将其分配给float

由于可能float的集合必然是可能的double集合的一个子集,因此转换警告会导致精度丢失。

为了轻松生活,请使用3.5f来表示float字面值。

但请注意,3.5可以在doublefloat中完全表示 ,所以在此特定的场合,错误是hogwash。

答案 1 :(得分:0)

这是Java的行为(如现有答案中所述)。 JShell完全遵循Java语法和语义 - 这很重要,因此您不会开发错误的代码。