2013-05-12 2 views
0

У меня есть NSArray имен и возрастов. Теперь я пытаюсь создать новый NSDictionary с элементом 0, держащим первое имя и первый возраст, а элемент 1, удерживающий второе имя и второй возраст от соответствующего NSArray? Это возможно?Как добавить элементы в NSDictionary в следующем формате?

В моей viewDidLoad:

NSMutableArray *Names = [[NSMutableArray alloc] init]; 
NSMutableArray *ages = [[NSMutableArray alloc] init]; 

for(int i = 0; i < 4; i++) { 
    [Names addObject:[candidates objectAtIndex:i]]; 
    [ages addObject:[studenAge objectAtIndex:i]]; 
} 

Но как я могу сделать из этого NSDictionary по заказу?

Окончательный результат

Я хочу написать эту NSDictionary в .plist так выглядеть следующим образом:
Details { item 0 { name:rahul age:25 } item 1 { name:ram age:26 } item 2 { name:aajy age:20 } item 4 { name:raj age:25 } }

+0

Поскольку ваш вопрос не очень ясен, почему бы вам не показать нам структуру, в которой вы хотели бы попасть? – aLevelOfIndirection

+0

sure..iwill show u – user2354159

+0

проверить новый код – user2354159

ответ

1

Словари не имеют порядок.

Возможно, вы хотите добавить словари в массив:

NSMutableArray *persons=[[NSMutableArray alloc]init];  
for(int i=0;i<4;i++) 
{ 
    [persons addObject:@ { @"name" : candidate[i], @"age" : studenAge[i] }]; 
} 

Вы можете отсортировать этот массив с сортировки методы NSArray, NSMutableArray.

+0

это возможно? – user2354159

+0

Что должно быть возможно или нет !? –

1

Как отметил @Amin, словари не поддерживать порядок и, так как вы, кажется, хотят индексированный доступ здесь является то, что я предлагаю в качестве конечной структуры: массив словарей:

NSMutableArray *details = [NSMutableArray array]; 
for (int i=0; i<4; i++) { 
    [details addObject:@{@"name": canditate[i], @"age":studentAge[i]}]; 
} 

Это даст

[{name:rahul, age:25}, {name:ram age:26},...] 
+0

спасибо, сэр за ваш ответ, позвольте мне попробовать – user2354159

Смежные вопросы