如何使用自定义对象对NSMutableArray进行排序?
我想做的事情似乎很简单,但我在网上找不到任何答案。 我有一个 NSMutableArray 对象,让我们说它们是'Person'对象。 我想通过Person.birthDate对 NSMutableArray 进行排序,这是一个 NSDate 。 我认为这与这个方法有关: NSArray *sortedArray = [drinkDetails sortedArrayUsingSelector:@selector(???)]; 在Java中,我会使我的对象实现Comparable,或者使用带有内联自定义比较器的Collections.sort ...你到底如何在Objective-C中执行此操作? #1楼 如果您只是对 NSNumbers 数组进行排序,可以使用1次调用对它们进行排序: [arrayToSort sortUsingSelector: @selector(compare:)]; 这是有效的,因为数组中的对象( NSNumber 对象)实现了compare方法。 您可以为 NSString 对象执行相同的操作,甚至可以对实现比较方法的自定义数据对象数组执行相同的操作。 这是使用比较器块的一些示例代码。 它对一组字典进行排序,其中每个字典在一个键“sort_key”中包含一个数字。 #define SORT_KEY @\"sort_key\" [anArray