2014-04-12 44 views
0

我想将浮点数舍入到给定的精度。例如:适用于Android的舍入浮点数

0,6667 to 0,67 
0,004 to 0,00 
0,328 to 0,33 

我知道我可以圆一个浮点数到整数,例如:

0,06 to 0 

有什么办法来实现这一目标?

+0

尝试使用这里找到了解决办法http://stackoverflow.com/questions/153724/how-to-round-a-number-to-n-decimal-places-in- java?rq = 1 – dharms

回答

0

您是否需要四舍五入来显示或计算?

如果它是显示您可以使用此:

DecimalFormat df = new DecimalFormat("##.00"); 
float f = (float) 4.234432; 
System.out.println(df.format(f)); 

进行计算,你可以做这样的:

float f = (float) 4.234432; 
BigDecimal bd = new BigDecimal(f); 
bd = bd.setScale(2, RoundingMode.HALF_UP); 
f = bd.floatValue(); 
+0

用于显示,但我想知道如何进行计算 –

+0

也添加了一个。两种方法都非常冗长,但是......它完成了。 – wvdz

0

格式浮点数的字符串指定数目小数位数使用String.format(...)

实施例:

String.format("%.2f", myFloatingPointValue);