我想知道如何(如果有可能)創建一個NSDictionary爲每個鍵保存一個NSArray。如何創建一個包含每個鍵的數組的NSDictionary?
類似的東西:
@ 「FirstKey」 - [0],[1],[2],[3]
@ 「SecondKey」 - [0],[1],[2] ,[3]
@「ThirdKey」 - [0],[1],[2],[3]
@「FourthKey」 - [0],[1],[2],[3]
希望你有想法,謝謝!
我想知道如何(如果有可能)創建一個NSDictionary爲每個鍵保存一個NSArray。如何創建一個包含每個鍵的數組的NSDictionary?
類似的東西:
@ 「FirstKey」 - [0],[1],[2],[3]
@ 「SecondKey」 - [0],[1],[2] ,[3]
@「ThirdKey」 - [0],[1],[2],[3]
@「FourthKey」 - [0],[1],[2],[3]
希望你有想法,謝謝!
您可以添加NSArray
實例(或任何其他集合)作爲NSDictionary
值:
NSDictionary *d = [[NSMutableDictionary alloc] init];
[d setValue:[NSArray arrayWithObjects:
[NSNumber numberWithInteger:0],
[NSNumber numberWithInteger:1],
...,
nil]
forKey:@"FirstKey"];
[d setValue:[NSArray arrayWithObjects:
[NSNumber numberWithInteger:0],
[NSNumber numberWithInteger:1],
...,
nil]
forKey:@"SecondKey"];
//etc.
另外,如果你沒有太多的鍵/值:
NSArray *values1 = [NSArray arrayWithObjects:
[NSNumber numberWithInteger:0],
[NSNumber numberWithInteger:1],
...,
nil];
NSArray *values2 = [NSArray arrayWithObjects:
[NSNumber numberWithInteger:0],
[NSNumber numberWithInteger:1],
...,
nil];
NSDictionary *d = [NSDictionary dictionaryWithObjectsAndKeys:
values1, @"FirstKey",
values2, @"SecondKey",
...,
nil];
是的,你可以在字典中存儲任何對象。對於數字值,您需要將它們存儲爲NSValue或NSNumber對象。
這完全有可能。最簡單的方法是創建您的NSArray,然後再加上一點爲對象,關鍵看你的NSDictionary
NSArray *myArray = [NSArray arrayWithObjects:@"One",@"Two", nil];
[myDictionary setObject:myArray forKey:@"FirstKey"];
有什麼方法可以在實例方法中創建該方法嗎? – Itamar
是的,只需使用'[NSDictionary initWithObjectsAndKeys:[NSArray arrayWithObjects:@「One」,@「Two」,nil],@「FirstKey」,nil];' –
我想創建一個NSDictionary,每一個鍵是一個字符串,並擁有一個NSArray – Itamar
是的,NSArray只是另一種對象。 – Dancreek