我有这段代码:
public BigDecimal getDifference() {
BigDecimal total = BigDecimal.ZERO.setScale(2, BigDecimal.ROUND_HALF_DOWN);
for (Order order : orders) {
BigDecimal originalCost= order.getOriginalValue();
BigDecimal nweCost= order.getNewValue();
BigDecimal diff = newValue.substract(originalValue);
total.add(diff);
}
return total;
}
我正在使用originalCost>进行测试newCost但总计为0.我在第total.add(diff)
行显示了调试器的快照:
有人知道我做错了吗?
感谢。
答案 0 :(得分:2)
total = total.add(diff);
不可变类型,如String。
某些IDE会发出警告。