在Swift中减少托管对象的数组

Dav*_*d L 3 ios swift

我无法确定在Swift中减少自定义托管对象子类数组的语法.我有一个托管对象子类,其属性名为amount,它是一个NSNumber.如何使用reduce函数获取托管对象数组中每个项目的总和.这是我尝试过的,但是我收到一条错误,上面写着"找不到会员'金额'".

let reduceSum=myArray.reduce(0) {$0 + $1.amount}
Run Code Online (Sandbox Code Playgroud)

我看过这个例子,但它没有帮助,因为我找不到成员错误.

Dav*_*d L 9

在发布这个之后,我又尝试了一件事并且有效.错误消息具有误导性,让我觉得语法错误但真正的问题是我需要将NSNumber转换为CGFloat.这是有效的:

let reduceSum=myArray.reduce(0) {$0 + CGFloat($1.amount)}
Run Code Online (Sandbox Code Playgroud)