相关疑难解决方法(0)

使用NSMutableDictionary的对象键(Objective-C)

我想存储一堆键值对,键是我自己的对象(ObjectA),它继承自NSObject,值为int.
我正在尝试使用NSMutableDictionary.我知道你只能在字典中存储对象类型,所以我有以下内容:

id value = [NSNumber numberWithInt:my_number];

[[self dictionary] setObject:value forKey:myObjectA];
Run Code Online (Sandbox Code Playgroud)

现在这给了我一个错误,说

- [ObjectA copyWithZone:]:发送到实例的无法识别的选择器

这很好,我知道对象密钥需要实现NSCopying协议.但是我读到你可以通过使用NSValue包装对象来实现这一点.

有人可以解释我如何包装我的对象,以及如何通过密钥找到值?我仍然可以使用dictionary objectForKey:myObjectA或者我必须在我搜索的同时使用NSValue对象包装myObjectA吗?或者我应该在我的自定义类上实现NSCopying,还是使用字符串键?

我正在寻找这种最简单,最简单的方法来使用字典,如果我必须实现一个字符串键并使用setValue:forKey:相反,但我宁愿使用对象密钥,如果可以的话.

objective-c nsdictionary key-value

7
推荐指数
2
解决办法
9718
查看次数

标签 统计

key-value ×1

nsdictionary ×1

objective-c ×1