情景:java項目中有時會用到,某些資料的百分比計算,百分比計算涉及到精度問題,選擇一種精确的計算方式,那就尤其重要,這時候BigDecimal就派上大用場啦,它能提供精确的結果。
下面是在網上找的一個公共方法,通過測試通過方法如下:
import java.math.BigDecimal;
public class CalculateUtil {
/**
* @param a 單數 32
* @param b 總數 145
* a / b 計算百分比32/145
* @return 22.07%
*/
public static String CalculateUtil(BigDecimal a, BigDecimal b){
String percent =
b == null ? "-" :
b.compareTo(new BigDecimal(0)) == 0 ? "-":
a == null ? "0.00%" :
a.multiply(new BigDecimal(100)).divide(b,2,BigDecimal.ROUND_HALF_UP) + "%";
return percent;
}
}
ok 就到這裡了( ^ - ^ )