我有一个带参数的函数evaluate
。第一个参数是Int
。闭包的第二个参数,它接受Int
并返回Double
。函数evaluate
然后返回[Double]
。返回数组的 k '元素是使用 k = 0,1,...,n的值 k 计算第二个参数的结果
func evaluate(n: Int, myFunction: Int -> Double) -> [Double] {
var doubles = [Double]()
for i in 1...n {
doubles[i] = myFunction(i)
}
return doubles
}
let polyTableClosure: Int -> Double = { return Double($0 * $0 * $0 + 2 * $0 + 4) }
print(evaluate(5, polyTableClosure))
期待类似:[7, 16, 37, 76, 139]
答案 0 :(得分:2)
缺少var dataLoader = new DataLoader();
await dataLoader.InitializeAsync();
标签。您对myFunction:
的致电应该是:
evaluate
此外,访问索引evaluate(5, myFunction: polyTableClosure)
的空数组不会在该索引处创建新的插槽。它会失败。
您必须附加到数组:
i