java 四舍五入

来源:百度知道 编辑:UC知道 时间:2024/05/28 11:03:50
float型如何四舍五入到小数点后两位?
float a = 999.3599f;这样的

谢谢了,一定要精确

不用那么麻烦,给你一个最简单的方法
import java.text.DecimalFormat;

public class Test {
public static void main(String[] args) {
float a = 999.3599f;
//这里控制小数点后几位
DecimalFormat df = new DecimalFormat("#.00");
System.out.println(df.format(a));
}
}

float a = 999.3599f; //设数值
int b = (int)Math.round(a * 100); //小数点后两位前移,并四舍五入
float c = (double)b / 100.00; //还原小数点后两位

最好的办法,比如 4.6 四舍五入取整, 4.6 + 0.5,结果再强制转成int型,取整数部分.结果就是5.
如果是4.4 的话,4.4+0.5=4.9 取整为4

如果是多位小数的话,先乘一个数,如10 100 1000 ,具体看小数位置,再执行上面的算法,结果再除以刚才乘的数.

DecimalFormat df = new DecimalFormat("#.00");
用这个自己定义格式

Math.round(a*100)/100.00