Невозможно изменить NSNumber на Double и выполнить некоторые вычисления с ним
Моя проблема в том, что у меня есть массив, который содержит несколько двойных значений
NSArray *level4results = [context executeFetchRequest:request error:&error];
Затем я суммирую все значения в этом массиве
NSNumber *l4sum = [level4results valueForKeyPath:@"sum.self"];
Следующее, что я хочу сделать, это разделить на 8 сумму массива... и вот где я застрял. Я перепробовал много вариантов и способов сделать это любым способом, я продолжал получать различную ошибку. Это то, что у меня есть в моем коде
double l4average = ([l4sum doubleValue] / 8);
однако это выдает следующую ошибку
* Завершение работы приложения из-за необработанного исключения "NSInvalidArgumentException", причина: "-[__NSArrayI doubleValue]: нераспознанный селектор отправлен в экземпляр
Помощь в решении этой проблемы приветствуется. Спасибо
2 ответа
Это оператор сбора. Эта строка:
NSNumber *l4sum = [level4results valueForKeyPath:@"sum.self"];
Должно быть написано:
NSNumber *l4sum = [level4results valueForKeyPath:@"@sum.self"];