舍入java Float.parseFloat

Sha*_*ane 8 java

鉴于以下代码,我希望它返回"float = 32000.0001".但相反,它返回"float = 32000.0".

System.out.println("float = "+Float.parseFloat("32000.0001"));
Run Code Online (Sandbox Code Playgroud)

我能做些什么来防止/控制四舍五入?我希望返回的完整值没有舍入.

Jim*_*son 9

float只有24位精度,不足以保存值中的位数.舍入不是由于解析而是由于数字的大小.如果需要浮点,则必须使用double;如果需要任意精度,则必须使用BigDecimal.