我不想改变anArray的设计方式,因为它在其他地方也用作UITableView的数据源。奇数值是“用户名”,偶数值是它们匹配的“日期”。 (“对”必须保持在一起。)排序包含匹配“对”值的NSMutableArray
我将如何对“按用户名”进行排序?
如何排列“按日期”?
我应该使用sortUsingFunction还是sortUsingSelector?
-(void) test
{
NSMutableArray *anArray = [NSMutableArray arrayWithObjects:@"Zeke", @"01-Jan-2010", @"Bob", @"02-Jan-2010", @"Fred", @"03-Jan-2010", @"Susan", @"04-Jan-2010", @"Kim", @"05-Jan-2010", @"Debbie", @"06-Jan-2010", nil];
[anArray sortUsingFunction:SortByDate context:(void *)context];
}
NSComparisonResult SortByDate(NSMutableArray *a1, NSMutableArray *a2, void *context)
{
// What goes here to keep the pair-values "together"?
}
唉。这涉及使用 - [NSDictionary allKeysForObject:]不能很快。 – 2010-10-04 03:27:08
当排序键(例如上面的日期)不能保证每个对象都是唯一的时,这种方法将不起作用。 – damian 2013-06-10 12:31:57