ObjectiveC是否为Key-Value-Pairs提供了一个允许密钥多次出现的集合?
我尝试将xml文件解析为一些简单的结构。每个东西都已经使用嵌套的NSDictionary,但现在xml元素可以多次出现。
编辑:我的解决方案
我选择了一个带有KeyValuePairs的NSArray,结果发现我需要一些对命令敏感的东西,NSDictionary是不可能的。 Sideeffect:NSFastEnumeration很容易以这种方式实现我的收藏。
答案 0 :(得分:4)
不,Cocoa没有这样的收藏品。如果您不想使用第三方库,则可以使用NSDictionary
NSArray
值来模拟该库。或者您可以查看CHDataStructures框架。
答案 1 :(得分:3)
这不是一个很好的钥匙......
最好的办法是拥有一个NSDictionary,并为每个密钥提供一个NSArray,其中包含针对该密钥的所有值。
答案 2 :(得分:1)
或者NSArray持有尽可能多的NSDictionaries(或NSObjects,每个都有一个键和一个值属性)。然后,您将能够使用谓词过滤数组,以查找特定键及其相关值的所有匹配项。