问题
我想用一些表示在BigDecimal
type中的货币值做一些简单的总和。
BigDecimal test = new BigDecimal(0);
System.out.println(test);
test.add(new BigDecimal(30));
System.out.println(test);
test.add(new BigDecimal(45));
System.out.println(test);
显然我不太了解BigDecimal
算术,看后面的输出。
Test
0
0
0
谁能帮我吗?
#1 热门回答(228 赞)
TheBigDecimal
是不可变的,所以你需要这样做:
BigDecimal result = test.add(new BigDecimal(30));
System.out.println(result);
#2 热门回答(28 赞)
看起来像Java docshere这样添加返回一个新的BigDecimal:
BigDecimal test = new BigDecimal(0);
System.out.println(test);
test = test.add(new BigDecimal(30));
System.out.println(test);
test = test.add(new BigDecimal(45));
System.out.println(test);
#3 热门回答(15 赞)
BigDecimal test = new BigDecimal(0);
System.out.println(test);
test = test.add(new BigDecimal(30));
System.out.println(test);
test = test.add(new BigDecimal(45));
System.out.println(test);