我需要按照某种预定义顺序排列数组中的一组字符串,比如,如果我的数组包含字段[a,b,c,d],那么我需要按照预定义顺序排列元素[ c,a,b,d]。如果源数组错过任何元素,那么我也需要以预定义的方式对它进行排序,就好像源数组包含[a,c,d]那么我需要结果为[c,a, d],这可能在iPhone SDK中使用NSPredicate。订单字符串数组
在此先感谢
我需要按照某种预定义顺序排列数组中的一组字符串,比如,如果我的数组包含字段[a,b,c,d],那么我需要按照预定义顺序排列元素[ c,a,b,d]。如果源数组错过任何元素,那么我也需要以预定义的方式对它进行排序,就好像源数组包含[a,c,d]那么我需要结果为[c,a, d],这可能在iPhone SDK中使用NSPredicate。订单字符串数组
在此先感谢
您可以按照与NSSortDescriptor您的阵列,如:
NSSortDescriptor *order = [[NSSortDescriptor alloc] initWithKey:@"key" ascending:YES];
NSArray *sorts = [[NSArray alloc] initWithObjects:order,nil];
NSArray *sortedArray = [myArray sortedArrayUsingDescriptors:sorts];
[sorts release];
[order release];
您创建顺序应用排序描述符的数组。
您也可以使用排序选择,看到这个答案更多的选择:How to sort an NSMutableArray with custom objects in it?
我只是使用NSString内置的比较:方法:
NSArray *newArray = [oldArray sortedArrayUsingSelector:@selector(compare:)];