11

配列内の一連の辞書を通過するforループがあります。

forループを通過するすべての辞書エントリを1つに統合するにはどうすればよいNSMutableDictionaryですか?

試しaddEntriesFromDictionaryましたが、動作しません。ご協力いただきありがとうございます。

for (int i=0; i<sections.count; i++){

    formElements    = [[sections objectAtIndex:i]objectForKey:@"Dictionary"];        
}
4

4 に答える 4

15
NSMutableDictionary * mutableDict = [NSMutableDictionary dictionary];

for (NSDictionary * formElements in sections)
{
    [mutableDict addEntriesFromDictionary:formElements];
}

これは、キーを共有しないことが正しい場合に機能するはずです。

于 2012-08-27T13:49:02.663 に答える
15

以下のように辞書オブジェクトを追加できます。

NSMutableDictionary *mDict=[NSMutableDictionary dictionary];
    [mDict addEntriesFromDictionary:DictObj];
于 2012-08-27T13:36:04.550 に答える
1
NSMutableDictionary *mDict=[[NSMutableDictionary alloc]init];
    NSMutableDictionary *mDict2=[[NSMutableDictionary alloc]init];

//later suppose you have 5 object in mDict and 2 object in mDict2. combine in this Way.
    NSMutableArray *keys=[[NSMutableArray alloc]init];
    NSMutableArray *obj=[[NSMutableArray alloc]init];

    keys=[[mDict allKeys] mutableCopy];
    obj=[[mDict allValues] mutableCopy];

    [keys addObjectsFromArray:[mDict2 allKeys]];
    [obj addObjectsFromArray:[mDict2 allValues]];

    NSMutableDictionary *dict=[[NSMutableDictionary alloc]initWithObjects:obj forKeys:keys];
于 2012-08-27T13:54:58.823 に答える
0

-objectEnumeratorまたはNSDictionaryの他のmethodfsを使用して、辞書を列挙できます。

したがって、ループ内で辞書を列挙し、すべてのオブジェクトにキーを1つの大きな辞書に追加します。

于 2012-08-27T13:40:26.643 に答える