Это не очень отличается от того, что вы делали в Python.
NSMutableDictionary *matchDict = ...
NSMutableArray *matchArray = ...
[matchDict setObject:matchArray forKey:someKey];
// This is same as: mydictionary['mykey']=[]
// 'matchArray' is still a valid pointer so..
[matchArray addObject:someObj];
// or later if 'matchArray' were no longer in scope
// it would look like this:
NSMutableArray* arrayForKey = [matchDict objectForKey:someKey];
[arrayForKey addObject:someObj];
// or more simply:
[[matchDict objectForKey:someKey] addObject:someObj];
// this is same as: mydictionary['mykey'].append('someitem')
edit
Так что если вам нужно добавить массивы для более чем одного ключа, вы можетесделать это:
Учитывая массив из двух ключей:
NSArray *keys = [NSArray arrayWithObjects:@"key0",@"key1", nil];
И словарь ...
NSMutableDictionary *dict = [NSMutableDictionary dictionaryWithCapacity:[keys count]];
Вот как вы можете создать массив для каждогоключ:
for (id key in keys) {
// Create a new array each time...
NSMutableArray *array = [NSMutableArray array];
// and insert into dictionary as value for this key
[dict setObject:array forKey:key];
}
Надеюсь, это даст вам идею.