2 回答

TA贡献1875条经验 获得超5个赞
通过循环切片切片来消除重复代码:
for _, transactions := range [][]transaction{b.Deposits, b. Withdrawals, b.Fees} {
for _, transaction := range transactions {
if transaction.Datetime.Before(datetime) {
cash = cash.Add(transaction.Cash)
}
}
}

TA贡献1155条经验 获得超0个赞
您可以附加到一个数组并对其进行迭代:
func (b branch) getCash(datetime time.Time) decimal.Decimal {
cash := decimal.NewFromFloat(0)
arr := append(b.Deposits, b.Fees...)
arr = append(arr, b.Withdrawals...)
for _, a := range arr {
if a.Datetime.Before(datetime) {
cash = cash.Add(a.Cash)
}
}
return cash
}
- 2 回答
- 0 关注
- 101 浏览
添加回答
举报