天天看點

java中計算百分比保留兩位小數

情景: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 就到這裡了( ^ - ^ )