我使用 NSSortDescriptor 以日期为键对对象进行排序。我的代码:
NSLog(@"Before sorting: %@", temp);
NSSortDescriptor *dateSortDescriptor = [NSSortDescriptor sortDescriptorWithKey: @"date" ascending: YES];
NSArray *sortedArray2 = [temp sortedArrayUsingDescriptors:[NSArray arrayWithObject: dateSortDescriptor]];
NSLog(@"After sorting: %@", sortedArray2);
NSMutableArray *afterSorting = [[(NSArray*)sortedArray2 mutableCopy]autorelease];
当日期是
22/08/2012
23/08/2012
25/09/2012
但是,我发现 NSSortDescriptor 似乎只按前面的前两个数字排序,因为当我的日期稍微改变时,我的结果变成了这样:
10/09/2012
22/08/2012
23/08/2012
有人可以请教吗?看到许多其他使用 NSSortDescriptor 的帖子与我上面的代码类似,但它们似乎在任何地方都没有错误。对我来说,它只按天排序,而不是按月排序!我所做的是对日期较近的对象进行排序。谢谢!