10

我似乎无法在 BigDecimal 类中找到“添加和分配”方法。

有办法吗?

如果您不理解我的问题,我正在尝试这样做:

a += b;

但我正在尝试使用 BigDecimals

4

5 回答 5

20

类中有一个add方法BigDecimal

你必须做 -a = a.add(b);

看看java 文档

于 2013-06-22T17:50:50.893 回答
7

我想你会喜欢这样的:

BigDecimal bd= getNumber();
bd.addAndAssign(5);

BigDecimal不可变的对象,所以,你不能那样做。

您必须使用add()它并将其等同于自身,例如a = a.add(b)

于 2013-06-22T17:52:52.793 回答
1

BigDecimals 是对象。运算符+=仅适用于原语。

所以我不认为你可以做你试图提议的事情。

于 2013-06-22T17:52:11.003 回答
1

您可以使用BigDecimal#add()方法。

a = a.add(b);

由于 BigDecimal 是不可变的,因此您不能期望a.add(b)发生变异a。您必须将新BigDecimal对象返回给引用a。因此a=a.add(b),这就是您所需要的。

于 2013-06-22T17:53:26.933 回答
0

不 - 没有等效机制

你只需要使用add方法

于 2013-06-22T17:51:43.770 回答