如何保留小數精度
阿新 • • 發佈:2019-01-28
1.java中有自帶的方法Math類中round,可以自己檢視API。
API中是這麼介紹的:round(double a) 返回引數中最接近的 long ,其中 long四捨五入為正無窮大。
Eg:
double a=10;
double b=3.0;
double c;
c=a/b;
System.out.println(c);
上面的結果是:3.3333333333333335。如果想保留兩位小數:
double a=10;
double b=3.0;
double c;
c=a/b;
c=Math.round(c*100)/100.0;
System.out.println(c);
重點解釋下c=Math.round(c*100)/100.0;這段程式碼。Math.round方法是把double型別資料中的小數會四捨五入,如果這個語句為c=Math.round(c);那麼結果c=3.0。而我們想保留兩位小數,就可以先把資料c擴大到所要兩位小數精度乘上100,然後在Math.round(c)方法執行完後再除以之前乘上的100,這時的除數100必須是100.0應為前面處理過的數為整數,這時100如果也是整數得到結果為整數。