合并两个字典
我希望合并字典以响应用户从服务器调用请求更多数据。
我看到这种方法对我来说是一种可用的方法:
- (void)addEntriesFromDictionary:(NSDictionary *)otherDictionary
其中指出:
如果两个字典包含相同的键,则接收字典的 该键的前一个值对象会被发送一条释放消息,并且 新的值对象取代了它的位置。
然而,例如在第一次调用时,我的字典会将键 0、1、2、3 作为字符串。不要问为什么这是我必须使用的数据!
然后在另一个调用中说出接下来的 4 个条目,而不是获取字符串键 4、5、6、7,我得到......0、1、2、3!
因此,如果我使用上面的方法,原始条目将始终被覆盖。
有没有办法合并这些数据,以便我得到 1、2、3、4、5、6、7 等?
我正在寻找某种丑陋的枚举形式吗?
I am looking to merge dictionaries in response to the user requesting more data from a server call.
I see this method is one available to me:
- (void)addEntriesFromDictionary:(NSDictionary *)otherDictionary
Which states this:
If both dictionaries contain the same key, the receiving dictionary’s
previous value object for that key is sent a release message, and the
new value object takes its place.
However for example on the first call my dictionary will have the keys 0, 1, 2, 3 as strings. Dont ask why this is the data I have to work with!
Then on another call for say the next 4 entries rather than getting string keys 4, 5, 6, 7 I get....0, 1, 2, 3!
So if I use the method above the original entries will always be overwritten.
Is there a way to merge such data so I get 1, 2, 3, 4, 5, 6, 7 etc?
Am I looking at some ugly form of enumeration?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
如果所有键都是连续整数,则应该改用数组(或者如果无法更改源格式,则转换为数组)。
arrayByAddingObjectsFromArray:
将在转换后将它们连接在一起,或者addObjectsFromArray:
如果可变。If all of your keys are sequential integers, you should be using arrays instead (or convert to them if you can't change the source format).
arrayByAddingObjectsFromArray:
will join them together after conversion, oraddObjectsFromArray:
if mutable.