doco解释了NSArray排序方法的用途,但是有人能够给出关于何时/为什么使用特定方法的要点?即你在代码中的什么情况下你会使用方法XXX而不是方法YYY。为:
答案 0 :(得分:3)
有关更多一般信息,请参阅Collection Programming Topics: Sorting Arrays。如果您正在查看课程参考文档,请务必查看列出的“Companion指南”,以获得有关课程如何工作的更实用,实际的建议。
基本上,sortedArrayUsingSelector:
和sortedArrayUsingFunction:context:
自10.0 / iOS 2.0以来就已存在。它们不如后来的其他方法灵活。
如果您有一组相对简单的对象,例如NSNumber
或NSString
,则可以使用[numbers sortedArrayUsingSelector:@selector(compare:)]
轻松对对象进行排序。
另一方面,如果您有一个更复杂的模型对象具有多个属性,例如age
,name
,date
,NSSortDescriptor
运行良好。这些是在OS X 10.3 / iOS 2.0中添加的。允许您执行首先按age
排序,然后按name
排序,然后按date
排序。