java BigDecimal 四捨五入注意

在使用BigDecimal 四捨五入注意:

Double f = 3.151605;

BigDecimal b = new BigDecimal(f);

double f1 = b.setScale(5, BigDecimal.ROUND_HALF_UP).doubleValue();

double a=BigDecimal.valueOf(f).setScale(5,   BigDecimal.ROUND_HALF_UP).doubleValue();

System.out.println(f1);

System.out.println(a);

會發現結果是:

3.1516

3.15161

並不是都是3.15161;

所以要注意使用BigDecimal.valueOf()或者new BigDecimal(f.toString()),這樣纔會真的四捨五入

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章