Получить NSDictionary из NSMutableArray - PullRequest
0 голосов
/ 17 февраля 2012

Я пытаюсь поместить NSDictionary в NSArray.Моя цель состоит в том, чтобы каждый объект в массиве был словарем с двумя ключами и двумя объектами.Таким образом, эти ключи для словаря будут называться «TITLE» и «AUTHOR», и каждый из них будет иметь значение, и все это будет храниться в объекте NSMutableArray.

Вот код, который у меня есть (dataSource isмассив со списком заголовков, author - это массив со списком соответствующих авторов, а searchData - это массив, в который я хочу, чтобы словарь вошел в объект):

for (int i = 0; i<[dataSource count]-1; i++) {
    NSLog(@"in");
    NSString *authorString = [NSString stringWithFormat:@"%@",[author objectAtIndex:i]];
    NSString *titleString = [NSString stringWithFormat:@"%@",[dataSource objectAtIndex:i]];
    NSDictionary *dict = [NSDictionary dictionaryWithObjectsAndKeys:titleString, @"TITLE",authorString,@"AUTHOR", nil];
    [searchedData addObject:dict];
}

Я пробовал это, но либоэто не работает, или Я не знаю, как читать данные из словаря в массиве .Я хочу быть в состоянии сказать "получить объект для ключа" заголовок "из словаря в объекте n искомых данных, но я не знаю как.

Большое спасибо !!!

Люк

Ответы [ 2 ]

2 голосов
/ 17 февраля 2012

пробовал это?

NSDictionary *nthDict = [mutableArray objectAtIndex:n];
NSString *title = [nthDict objectForKey:@"TITLE"];
NSString *author = [nthDict objectForKey:@"AUTHOR"];
1 голос
/ 17 февраля 2012

Ваш цикл for пропускает последний элемент в массиве dataSource.Кроме этого я не вижу никаких проблем с вашим кодом.Добавление неизменяемого словаря в массив - это хорошо, извлекать его, как показывает H2CO3, тоже нормально.

...