由于某些奇怪的原因,NSOrderedSet似乎没有在iOS中实现。是否有另一个提供类似功能的对象 - 基本上是随机插入/删除对象并按排序顺序访问第一个/最后一个的能力?
在我看来,为了实现基本的FIFO队列等,需要这样的东西。
编辑:我最终做了一个RYO解决方案。
答案 0 :(得分:2)
一个选项是这个开源数据结构库: http://dysart.cs.byu.edu/CHDataStructures/index.html
在该库中是CHOrderedSet http://dysart.cs.byu.edu/CHDataStructures/interface_c_h_ordered_set.html
唯一的依赖是NSMutableSet,所以它应该适用于所有iOS版本。
编辑:
正如Bourne在上面指出的那样,它也在iOS5中(reference):
新的
NSOrderedSet
集合类提供集合的语义, 因此,每个元素在集合中最多出现一次,但在哪里 元素按特定顺序排列。
如果您对iOS5没有硬依赖,那么CHOrderedSet是一个不错的选择。
答案 1 :(得分:-2)
NSOrderedSet和NSMutableOrderedSet在iOS 5中不可用。以下是对任何好奇者的参考: http://developer.apple.com/library/ios/#documentation/Foundation/Reference/NSMutableOrderedSet_Class/Reference/Reference.html#//apple_ref/occ/cl/NSMutableOrderedSet