Простой вопрос, я думаю ...Суммируя значения из строки (componentsJoinedByString)
Как сложить значения в следующей строке? scoreValue = "8.68,2.815,5,7.975,2.695,7.285,3.625,7.36,8.335,2.485";
Немного информации об источнике. Строка возвращается из объекта CoreData (так называемый «ScoreData»), и поместить в экземпляр NSDictionary, как это:
NSDictionary *getScoreValues = [self.scoreEntityResultsForValues objectAtIndex:[indexPath row]];
NSLog(@"getScoreValues returns: %@", getScoreValues); // This is what getScoreValues returns for each of the scoreValue's in the CoreData entity.
Это как-значения, размещенные в сущности, первоначально
//Call the ScoreData entity
ScoreData *newEntry = [NSEntityDescription insertNewObjectForEntityForName:@"ScoreData" inManagedObjectContext:self.managedObjectContext];
//Join the value returned from the NSArray by a "," and post them as a string to the ScoreData entity
NSString *stringForScoreEntity = [[CEWStoreVars sharedScoreArray].sharedScoreArrayProperty componentsJoinedByString:@","];
newEntry.scoreValue = stringForScoreEntity;
Причина, по которой я отправляю значения в виде строки для сущности, заключается в том, что я не мог заставить сущность принять значение float, и я хочу, чтобы потом вытащить каждый отдельный результат. Но я открыт для предложений, если есть лучший способ сделать это. Кроме того, дайте мне знать, если вам нужно больше кода, чтобы расшифровать то, что происходит!
Заранее благодарен!
EDIT
Для тех, кто заинтересован, это то, как код должен выглядеть:
//Load the Key and KeyValue into Dictionary
NSDictionary *getScoreValues = [self.scoreEntityResultsForValues objectAtIndex:[indexPath row]];
//Convert the dictionary keyValue to a string
NSString *convertDictKeyToString = [getScoreValues objectForKey:@"scoreValue"];
//Remove the "," in the string.
NSArray *items = [convertDictKeyToString componentsSeparatedByString:@","];
//Add them up to get the sum
double total = 0.0;
for (NSString *string in items)
{
total += [string floatValue];
}
, что не кажется, работает. Это дает мне ошибку: «Нет видимого интерфейса для NSDictionary объявляет селекторные компонентыSeperatedByString» – Chris
scoreValue должен быть NSString без NSDictionary! Из вашего вопроса: «Как я могу добавить значения в следующую строку?» –
Beautiful, it работает! – Chris