四舍五入到小数点后5-6位,但只能四舍五入

时间:2019-06-01 18:58:24

标签: java android decimalformat

我正在制作一个应用,并且我使用十进制格式对数字进行四舍五入。 它可以正常工作到5到6位数,但只能四舍五入到两位小数。

我进行了一些编辑,但是没有用。直到5到6位数为止,它的取整效果非常好,即 四舍五入后只保留小数点后三位,但是当我超过7-8时,它仅舍入两位小数点

这是我的代码

   double result = Double.parseDouble(myEditText.getText().toString());
        String i = Double.toString(result);
        int int1 = i.indexOf(".");
        String io = "0.";
        int ii = (i.length() - int1 - 1)-3;
        for (int iio = 0;iio <= ii;iio++){

            io = io+"#";
        }



        DecimalFormat decimalFormat = new DecimalFormat(io);
        String string = decimalFormat.format(result);
        result = Double.parseDouble(string);
        textArea.setText(textArea.getText().toString() + " = "+result);

        TextView tv= (TextView) findViewById(R.id.tv);
        tv.setText(EnglishNumberToWords.convert((long) result));

例如我输入了1.678394762 它给我1.6783948,而应该给1.678 如果我输入1.45678,它会给我预期的1.457

0 个答案:

没有答案