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。

相關文章
相關標籤/搜索