让我们举一个简单的例子:
Class Foo{
private BigDecimal item1;
private BigDecimal item2;
private BigDecimal item3;
private BigDecimal item4;
private BigDecimal item5;
//setters and getters
public BigDecimal getTotal(){
BigDecimal total = BigDecimal.ZERO;
if(null != item1){
total =total .add(item1);
}
if(null != item2){
total =total .add(item2);
}
...
...
}
}
我是在实体层次上求和,这是不是正确的方法?
有谁能给予我更好的代码来获取总价值
5条答案
按热度按时间jdgnovmf1#
您可以使用循环来简化代码:
cwtwac6a2#
使用
List<BigDecimal>
svgewumm3#
如果你有一个固定的(和少量的)数字,你可以做如下:
如果项目为null,则添加0,否则添加项目本身。如果项目的数量可变,则需要在数组中迭代它们,或者类似于以下操作:
wz3gfoph4#
如果您不介意使用反射:
样品:
jfgube3f5#
java 8+,可以使用流API