我有一系列词典。这些词典的格式如下:
NSDictionary *oneDict = @{
@"code": @"123"
@"name": @"car"
@"date": creationDate
}
这些词典存储在NSArray中。
我需要从该数组中提取具有最新日期的字典。
我可以通过这样做来发现最近的日期:
NSArray *extractDates = [array objectForKey:@"date"];
NSArray sortedDates = [extractDates sortedArrayUsingSelector:@selector(compare:)];
NSDate *mostRecentDate = (NSDate *)[sortedDates lastObject];
现在我知道了,我可以在数组上进行交互并查找该日期,因此我可以获取字典,但我想知道Objective-C是否有某种机制可以直接执行此操作。
答案 0 :(得分:1)
试试这个,
NSSortDescriptor *dateDescriptor = [NSSortDescriptor
sortDescriptorWithKey:@"date"
ascending:YES];
NSArray *sortDescriptors = [NSArray arrayWithObject:dateDescriptor];
NSArray *sortedArray = [array
sortedArrayUsingDescriptors:sortDescriptors];
NSDictionary *dict = (NSDictionary *)[sortedArray lastObject];