我正在制作一个应用,并且我使用十进制格式对数字进行四舍五入。 它可以正常工作到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