答:不正确。精度不准确,应该用强制类型转换,如下所示: float f=(float)3.4
在 java 中使用 double 和 float 时,会小概率出现精度不准备的问题,比如 System.out.println(0.1+0.2);
输出 0.30000000000000004 。
解决方法是使用 BigDecimal。
BigDecimal 有几个构造函数,建议用 String 参数的构造函数。
System.out.println(new BigDecimal(0.1));
输出: 0.1000000000000000055511151231257827021181583404541015625
System.out.println(new BigDecimal(“0.1″));
输出: 0.1

