使用ArrayList计算Sum

时间:2017-05-16 10:19:11

标签: java spring arraylist

我正在创建一个SpringServiceImpl类,它将是List中的总借记金额。但是,我收到了一个错误:The operator += is undefined for the argument type(s) List<GeneralLedgerEntity>, GeneralLedgerEntity

List<GeneralLedgerEntity> calculateResult = new ArrayList<>();
for(GeneralLedgerEntity credit : calculateResult){
    calculateResult += credit;
    return calculateResult;
}

应该选择什么?

2 个答案:

答案 0 :(得分:0)

您不能在Java中使用+运算符。相反,您必须在SpringServiceImpl类中实现plusadd方法。

class Point{
    public double x;
    public double y;

    public Point(int x, int y){
        this.x = x;
        this.y = y;
    }

    public Point add(Point other){
        this.x += other.x;
        this.y += other.y;
        return this;
    }
}

使用

Point a = new Point(1,1);
Point b = new Point(2,2);
a.add(b);

答案 1 :(得分:-1)

您正在尝试对GeneralLedgerEntity个对象求和,Java没有运算符重载(除了字符串)。

您需要添加此对象所持有的值,例如,如果debitAmount类中有一个名为GeneralLedgerEntity的字段,则执行以下操作:

calculateResult += credit.debitAmount

而且你的for循环中有一个return语句,没有意义,它只会被执行一次,在循环之后移动return语句。