我无法确定在 Swift 中减少自定义托管对象子类数组的语法。我有一个托管对象子类,它有一个名为 amount 的属性,它是一个 NSNumber。如何使用 reduce 函数获取托管对象数组中每个项目的金额总和。这是我尝试过的方法,但我收到一条错误消息,指出“找不到成员‘amount’”。
let reduceSum=myArray.reduce(0) {$0 + $1.amount}
我看过这个example ,但这并没有帮助,因为我遇到了找不到成员的错误。
最佳答案
在发布这个之后,我又尝试了一件事情并且成功了。错误消息具有误导性,让我认为语法错误,但真正的问题是我需要将 NSNumber 转换为 CGFloat。这是有效的:
let reduceSum=myArray.reduce(0) {$0 + CGFloat($1.amount)}
关于ios - 在 Swift 中减少托管对象数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27308394/