我有NSMutableArray
存储的字典需要整理出来....排序依赖于另一个数组中的字段....
示例:
数组1 ==>红色 - 1,白色 - 2,绿色 - 3.阵列2 ==>绿色,红色, 白
结果应该是数组3 =>绿色 - 3,红色 - 1,白色 - 2.(项目在 数组1的排序取决于数组2中的顺序。
答案 0 :(得分:0)
如果您的第一个数组看起来像[{@"Red": @1}, {@"White": 2}, {@"Green": 3}]
,则下一个方法应该有效:
NSArray* array3 = [array1 sortedArrayUsingComparator:^NSComparisonResult(NSDictionary* dict1, NSDictionary* dict2) {
NSUInteger idx1 = [array2 indexOfObject:[dict1 allKeys][0]];
NSUInteger idx2 = [array2 indexOfObject:[dict2 allKeys][0]];
if(idx1 < idx2) return NSOrderedAscending;
if(idx2 > idx1) return NSOrderedDescending;
return NSOrderedSame;
}];