2017-05-16 69 views
-6

我創建一個SpringServiceImpl類的地方將安排名單內的總借方發生額。然而,我得到一個錯誤:The operator += is undefined for the argument type(s) List<GeneralLedgerEntity>, GeneralLedgerEntity總和計算使用的ArrayList

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

這應該是什麼選擇?

+1

'calculateResult'是你的清單,我想你想有一個數值,這裏 – Jens

+0

請更正你的問題,你不能爲一個ArrayList的做+ =。我想你已經忘記了Java,我不知道人們在假設和回答你的問題 –

+0

你想做什麼?要麼計算一個總數,但是你還沒有創建一個數字變量來存儲總數,或者創建一個所有'GeneralLedgerEntity'的列表,但是你正在遍歷一個空列表。 –

回答

-1

您正在試圖總結GeneralLedgerEntity對象,Java沒有運算符重載(除了String)。

你需要的是添加此對象持有的價值,例如,如果你有一個字段中GeneralLedgerEntity類稱爲debitAmount然後執行:

calculateResult += credit.debitAmount

,你也有一個return語句您for循環,這沒有意義,它只會執行一次,在循環之後移動return語句。

+0

'calculateResult'是一個List <>,不是一個數字。 –

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);