我想知道(如果可能的话)如何为每个键创建一个包含NSArray的NSDictionary。
类似的东西:
@“FirstKey” - [0],[1],[2],[3]
@“SecondKey” - [0],[1],[2],[3]
@“ThirdKey” - [0],[1],[2],[3]
@“FourthKey” - [0],[1],[2],[3]
希望你明白了,谢谢你!
答案 0 :(得分:7)
您可以将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];
答案 1 :(得分:4)
这完全可能。最简单的方法是创建NSArray,然后将其添加为NSDictionary的密钥对象
NSArray *myArray = [NSArray arrayWithObjects:@"One",@"Two", nil];
[myDictionary setObject:myArray forKey:@"FirstKey"];
答案 2 :(得分:1)
是的,您可以将任何对象存储在字典中。对于数值,您需要将它们存储为NSValue或NSNumber对象。