1、累加int型數據
對於使用BigDecimal的add方法進行相加操作時,累加整型
的數據沒有問題,但是當我們累加BigDecimal
類型的數據時,會發現數據並沒有進行累加,代碼如下:new BigDecimal中放入的是一個int
型數據。
int i = 3;
BigDecimal overdueRateTotal=new BigDecimal(0);
overdueRateTotal = overdueRateTotal.add(new BigDecimal(i));
System.out.println();"overdueRateTotal:"+overdueRateTotal);
這樣得出的overdueRateTotal:3
,累加數據沒有問題。
2、累加BigDecimal數據
BigDecimal i = new BigDecimal(3.00);
BigDecimal overdueRateTotal=new BigDecimal(0);
overdueRateTotal = overdueRateTotal.add(new BigDecimal(i));
System.out.println();"overdueRateTotal:"+overdueRateTotal);
這樣得出的overdueRateTotal:0
,累加數據出問題,應該改爲:
BigDecimal i = new BigDecimal(3.00);
BigDecimal overdueRateTotal=new BigDecimal(0);
overdueRateTotal = overdueRateTotal.add(new BigDecimal(i.toString()));
System.out.println();"overdueRateTotal:"+overdueRateTotal);
具體原因暫不知,想知道的看這個https://blog.csdn.net/ugg/article/details/8213666