1. 程式人生 > >BigDecimal轉long丟失精度問題

BigDecimal轉long丟失精度問題

    public static void main(String[] args) {
        BigDecimal asdBigDecimal = new BigDecimal(56.33347);
        long sad = asdBigDecimal.longValue();
        double asda = asdBigDecimal.doubleValue();
        System.out.println(sad);
        System.out.println(asda);
    }

執行結果:

56
56.33347

而且BigDecimal.longValue()還會自動四捨五入,不想捨去小數點的朋友要用doubleValue()