0

私にNSArrayは名前と年齢があります。今NSDictionary、対応するNSArray? それは可能ですか?

私の中で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注文でこれから作ることができますか?

最終結果

これを .plist に書きたいNSDictionaryので、次のようにします。
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 } }

4

2 に答える 2

1

辞書には順序がありません。

おそらく、配列に辞書を追加したいと思うでしょう:

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

この配列は、NSArray、NSMutableArray の sort-Methods でソートできます。

于 2013-05-12T11:59:13.163 に答える
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},...]
于 2013-05-12T12:05:09.760 に答える