利用 NSSortDescriptor 对 NSMutableArray 排序
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了利用 NSSortDescriptor 对 NSMutableArray 排序相关的知识,希望对你有一定的参考价值。
有时我们在NSMutableArray中存的是网络请求返回的数据,而每一个元素又是一个NSDictionary,如果这时候需要把数组中的元素按照每个元素字典中某一个key来排序,那么我们可以利用Objective C中的类:NSSortDescriptor来快速实现需求。
通常会把排序的代码封装到一个方法中,比如下面这个方法:
+ (void) changeArray:(NSMutableArray *)dicArray orderWithKey:(NSString *)key ascending:(BOOL)yesOrNo{
NSSortDescriptor *distanceDescriptor = [[NSSortDescriptor alloc] initWithKey:key
ascending:yesOrNo];
NSArray *descriptors = [NSArray arrayWithObjects:distanceDescriptor,nil];
[dicArray sortUsingDescriptors:descriptors];
[distanceDescriptor release];
}
参数说明:
dicArray:待排序的NSMutableArray。
key:按照排序的key。
yesOrNo:升序或降序排列,yes为升序,no为降序
以上是关于利用 NSSortDescriptor 对 NSMutableArray 排序的主要内容,如果未能解决你的问题,请参考以下文章
使用 NSSortDescriptor 对 NSOrderedSet 进行排序
iPhone:无法对多对关系进行 NSSortDescriptor。如何排序?
使用 NSSortDescriptor 按时间倒序对 CoreData 进行排序
NSSortDescriptor 没有对我的 NSMutableArray 进行排序?