0

我的问题是我有一个包含一些双值的数组

NSArray *level4results = [context executeFetchRequest:request error:&error];

然后我总结了该数组中的所有值

NSNumber *l4sum = [level4results valueForKeyPath:@"sum.self"];

我想做的下一件事是将数组的总和除以 8……这就是我卡住的地方。我已经尝试了许多选项和方法,无论哪种方式我都不断收到不同的错误。这就是我目前在我的代码中的内容

double l4average = ([l4sum doubleValue] / 8);

但是这会引发以下错误

*由于未捕获的异常“NSInvalidArgumentException”而终止应用程序,原因:“-[__NSArrayI doubleValue]:无法识别的选择器发送到实例

帮助解决这个问题表示赞赏。谢谢

4

2 回答 2

2

它是集合运算符。这一行:

NSNumber *l4sum = [level4results valueForKeyPath:@"sum.self"];

应该写成:

NSNumber *l4sum = [level4results valueForKeyPath:@"@sum.self"];

于 2013-05-19T03:56:57.163 回答
2

求和运算符需要一个@

@"@sum.self"
于 2013-05-19T03:48:28.780 回答