我认为这对你来说可能是一个非常简单的问题。
但是我搜索了很多,我不知道我是不是很傻或者我使用的是错误的班级(NSMutableArray
)。
我想为特定键添加一个对象,以便以后可以检索它。
例如:
NSMutableArray *grisOcurrencias = [[NSMutableArray alloc] init];
[grisOcurrencias setValue:ocurrencia forKey:[NSString stringWithFormat: @"%f", pixelVal]];
但是如果我执行类似的操作,数组不会插入到数组中:
[grisOcurrencias addObject: ocurrencia]
插入对象。
我做错了吗?
其他的事情......我想通过密钥恢复对象,我应该使用什么方法?
非常感谢
答案 0 :(得分:8)
您正在寻找NSMutableDictionary
,而不是NSMutableArray
。字典基于键存储对象,而数组基于索引存储对象。
NSMutableDictionary *dict = [NSMutableDictionary dictionary];
[dict setObject:something forKey:@"Some Key"];
// ... and later ...
id something = [dict objectForKey:@"Some Key"];
答案 1 :(得分:4)
您想使用NSDictionary
。
NSMutableDictionary *grisOcurrencias = [[NSMutableDictionary alloc] init];
[grisOcurrencias setObject:ocurrencia forKey:[NSString stringWithFormat: @"%f", pixelVal]];
然后检索对象:
id object = [grisOcurrencias objectForKey:[NSString stringWithFormat: @"%f", pixelVal]];
数组是一个有序的项集合,其中每个项都有一个整数索引。字典是对象的集合,每个对象都是根据键设置和检索的,就像真正的字典一样,键是单词,值(对象)是定义。