0

私の問題は、いくつかの double 値を保持する配列があることです

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 に答える