例如,如果我有一个对象:
@interface MyObject
{
__id;
__data;
}
我有一个这样的对象的NSArray:
id=4
data=Apple
id=5
data=Banana
id=6
data=Orange
我还有一个NSArray的ids:
{"5", "4", "6"}
现在我想按ID在第二个数组中按顺序对对象数组进行排序,结果应为:
id=5
data=Banana
id=4
data=Apple
id=6
data=Orange
是否可以(在ObjC for iPhone中)?什么是最有效的方式?
谢谢!
答案 0 :(得分:1)
您可以使用NSArray类的- (NSArray *)sortedArrayUsingComparator:(NSComparator)cmptr
函数。
你应该编写自己的比较器块,它将根据id数组在id数组中的位置返回排序 - 即当idA比数组的开头更远时返回NSOrderedAscending而不是idB。
希望这有帮助。