这是我的代码,我不知道为什么它不起作用。标题是错误所说的。我正在使用Xcode中的Swift,代码应该创建一个函数,其中包含的参数数量与我告诉它有/无限制。
func addMyAccountBalances(balances : Double) -> Double {
var result : Double = 0
for balance in balances {
result += balance
}
}
答案 0 :(得分:3)
代码应该创建一个函数,其参数与我告诉的一样多
你可能想要的是一个带有可变数量的参数的函数,
这由...
表示类型:
func addMyAccountBalances(balances : Double ...) -> Double {
var result : Double = 0
for balance in balances {
result += balance
}
return result
}
print(addMyAccountBalances(1.0, 2.0, 3.0))
print(addMyAccountBalances(4.5, 5.6))
在函数内部,balances
具有数组类型[Double]
你可以迭代它的元素。
请注意,使用reduce()
:
func addMyAccountBalances(balances : Double ...) -> Double {
let result = balances.reduce(0.0, combine: +)
return result
}
您的代码无法编译,因为balances : Double
只是
双数,不是数组或序列。