Java实现浮点数的四舍五入,保留几位小数

直接上代码,很简短spa

1code

2ci

3table

4tab

5类型转换

6di

7co

8浮点数

double myRound(double d,int n)数字

{

    d = d*pow(10,n);

    d += 0.5;

    d = (long)d;

    d = d/pow(10,n);

    return d;

}

上述代码中的d是咱们要进行四舍五入的浮点数,n是咱们要保留的小数点后位数。 
四舍五入,主要靠这两行代码实现

1

d += 0.5; d = (long)d;

强制类型转换,会直接舍去小数点后的数字,而先对d进行加0.5操做,则是为了四舍五入,好比4.1,加0.5后变为4.6,强转,舍去小数部分,变为4;又如5.7,加0.5后变为6.2,强转,舍去小数部分,变为6。

保留n位小数,主要靠

1

d = d*pow(10,n);

1

d = d/pow(10,n);

好比对,62.164保留2位小数,先乘10的二次方,为6216.4,四舍五入位6216,在除以10的二次方,为62.16。

相关文章
相关标签/搜索