java如何将十进制数格式化为2或3位数?
我正在用Eclipse编写一个转换器,结果是9或10位小数,我想让它变成2或3。 这是我代码的一部分:
double gr = 0;
if (edtGr.getText().toString().length() > 0) {
gr = Float.parseFloat(edtGr.getText().toString());
}
if (edtNgr.getText().toString().length() > 0) {
gr = (Double.parseDouble(edtNgr.getText().toString())) / 1000000000;
}
edtNgr.setText("" + (gr * 1000000000));
edtGr.setText("" + gr);
这个代码将克转换为纳克,我希望结果是2或3位小数
# 1 楼答案
对于小数点后2位,将代码更改为
小数点后3位
也可以使用
DecimalFormat
。使用它的一种方法(使用3个点):请访问How to format Decimal Number in Java查看更多信息
# 2 楼答案
(双重)数学。四舍五入(价值*100000)/100000。。由零的数量表示的精度的数量
或者
双d=12345.2145
BigDecimal bd=新的BigDecimal(d)。设置刻度(3,圆形模式。半_偶数); d=bd.doubleValue()
根据所需精度更改setScale方法中的第一个参数
# 3 楼答案
试试看
小数点后3位
# 4 楼答案
你可以用
另一种方式
# 5 楼答案
你可以像这样使用
NumberFormatter
然后将其格式化为
这将使输出
36.555
四舍五入55468865
到555