我有这个程序,我需要在其中添加许多BigDecimals。我有以下代码片段
BigDecimal Average = new BigDecimal(3.0);
BigDecimal ATT = new BigDecimal(0.0);
ATT.add(A_BigDecimal);
ATT.add(B_BigDecimal);
ATT.add(C_FullBigDecimal);
System.out.println("Total Amount: " + ATT);
System.out.println("Average: " + ATT.divide(Average));
每次尝试此代码的变体时,我都会遇到错误,如何将多个BigDecimals一起添加? 编辑:忘记提到输出为零,始终为零,就好像引用变量没有读取add函数。
答案 0 :(得分:2)
BigDecimal
是不可变的。创建对象后,无法更改。
add
方法将返回计算结果。您可能希望将该返回值分配给某些内容。
答案 1 :(得分:0)
这就是Joe C在更新的代码中的含义:
BigDecimal Average = new BigDecimal(3.0);
BigDecimal ATT = new BigDecimal(0.0);
ATT = ATT.add(A_BigDecimal);
ATT = ATT.add(B_BigDecimal);
ATT = ATT.add(C_FullBigDecimal);
System.out.println("Total Amount: " + ATT);
System.out.println("Average: " + ATT.divide(Average));