androidjava添加/子奇怪的十进制结果



我试图添加浮点数,但效果不好。

Result:
0.2
0.4
0.6
0.8
1.0
1.2
1.4000001

我的代码:

static public void add_order(Product d)
    {       
        Float tt = Float.parseFloat(text_price.getText().toString());       
        tt += Float.parseFloat(d.getPrice());
        text_price.setText(tt + "");
    }

知道吗?

对我来说似乎不太好用,float并不是为了得到确切的结果;不要在那种情况下使用它。使用intlong,例如乘以100,则有两位实际有效的数字。

根据代码示例中的术语,我假设您正在做一些货币工作;如果您对不同的精度有要求,请选择BigDecimal

最新更新