[英]How to sort an NSArray of objects using another NSArray which contains the ordered keys of objects?
例如,如果我有一个对象:
@interface MyObject
{
__id;
__data;
}
我有这样的对象的NSArray:
id=4
data=Apple
id=5
data=Banana
id=6
data=Orange
我也有一个ID的NSArray:
{"5", "4", "6"}
现在我想按ID对对象数组进行排序,使其在第二个数组中排序,因此结果应为:
id=5
data=Banana
id=4
data=Apple
id=6
data=Orange
是否可以(在iPhone的ObjC中)? 最有效的方法是什么?
谢谢!
您可以使用- (NSArray *)sortedArrayUsingComparator:(NSComparator)cmptr
函数。
您应该编写自己的比较器块,该块将根据ids在ids数组中的位置返回排序-即,当idA比idB离数组的开头更远时,返回NSOrderedAscending。
希望这可以帮助。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.