我想在运行时将数字转换为小数点后两位(始终显示小数点后两位)。我尝试了一些代码,但它只是这样做,如下所示
20.03034 >> 20.03
20.3 >> 20.3 ( my code only rounds not converts )
但是,我希望它这样做:
20.03034 >> 20.03
20.3 >> 20.30 (convert it to two decimal places)
我的代码如下:
angle = a variable
angle_screen = a variable
DecimalFormat df = new DecimalFormat("#.##");
angle = Double.valueOf(df.format(angle));
angle_screen.setText(String.valueOf(angle) + tmp);
任何有关如何执行此操作的帮助都会很棒,谢谢。
尝试这个new DecimalFormat("#.00");
update:
double angle = 20.3034;
DecimalFormat df = new DecimalFormat("#.00");
String angleFormated = df.format(angle);
System.out.println(angleFormated); //output 20.30
您的代码未正确使用十进制格式
模式中的 0 表示强制数字,# 表示可选数字。
update 2: 检查下面的答案
如果你想0.2677
格式为0.27
你应该使用new DecimalFormat("0.00");
否则将会是.27
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)