1. 程式人生 > >double 計算時精度損失

double 計算時精度損失

計算double型別的數時有時候會多出0.000000001,會有不確定個數的0,在計算時將其轉為BigDecimal就不會出錯。

BigDecimal sum = new BigDecimal(0.0);                

BigDecimal tmp = new BigDecimal(0.0);             
for(int i=0; i<list.size(); i++){                    

	tmp = new BigDecimal(list.get(i).get("AMOUNT").toString()); 
	
	sum = sum.add
(tmp); } sum.doubleValue();