我想盡量減少對象列表,但斯卡拉和我的大腦只是不會收斂(或我正在想一個完全錯誤的方式,哈哈)。我的問題很簡單,但我無法找到解決方案。減少Scala中的對象列表不起作用
是以下所示的錯誤:
type mismatch;
found : Double
required: models.Transaction
def accountBalance(account: String): Double = {
val accountTransactionList = Transaction.accountBalance(account)
accountTransactionList.reduce {
(transactionA, transactionB) => transactionA.amount + transactionB.amount
}
0.0
}
Transaction.accountBalance(帳戶)和我對象事務:
object Transaction {
var accountTransactions = Map[String, List[Transaction]]()
def accountBalance(account: String): List[Transaction] = accountTransactions.getOrElse(account, List[Transaction]())
}
我回到0.0只是這樣的代碼編譯,但爲什麼是期待階我的班級models.Transaction?
謝謝!
減少了輸入一個累加器和當前值。我想你想把'(transactionA,transactionB)=> transactionA.amount + transactionB.amount'改成'(acc,transactionA)=> acc + transactionA.amount'。很難說沒有更多的代碼。 – erip
@erip不起作用,它顯示此錯誤:重載的方法值[+]不能應用於(models.Transaction) –