我有2 BigDecimal
數字。我正在嘗試添加它們。我的代碼如下:BigDecimal不做添加操作
BigDecimal bd1 = new BigDecimal(10);
BigDecimal bd2 = new BigDecimal(10);
bd1.add(bd2);
在這裏,我卻又期待的BD1 20的值,然後再次它的顯示10.這不是添加。如果我做錯了什麼,請幫忙。
我有2 BigDecimal
數字。我正在嘗試添加它們。我的代碼如下:BigDecimal不做添加操作
BigDecimal bd1 = new BigDecimal(10);
BigDecimal bd2 = new BigDecimal(10);
bd1.add(bd2);
在這裏,我卻又期待的BD1 20的值,然後再次它的顯示10.這不是添加。如果我做錯了什麼,請幫忙。
Reimeus是正確的。您需要將值分配給的結果是這樣的:
bd1 = bd1.add(bd2);
如果您想了解一成不變的,你可以參考以下鏈接的詳細信息:
BigDecimal
值是不可改變的,您需要將值分配給的add
結果:
bd1 = bd1.add(bd2);
您需要將結果存儲在一個新的變量:
BigDecimal bd3 = bd1.add(bd2);
BigDecimal爲不可變的。每個操作都會返回一個包含操作結果的新實例。
閱讀Java Doc about BigDecimal幫助你更好地理解。
如果你想存儲在BD1 BD1和BD2的總和,你所要做的
bd1 = bd1.add(bd2);
試試這個:
BigDecimal bd1 = new BigDecimal(10);
BigDecimal bd2 = new BigDecimal(10);
bd1 = bd1.add(bd2);
System.out.println(bd1); /*Prints 20*/