iPhone:基于数字排序时崩溃
我有一个NSArray输出。请参阅下文。我想根据其中的特定数字字段(顺序)进行排序。请参考下面的代码iPhone:基于数字排序时崩溃,iphone,Iphone,我有一个NSArray输出。请参阅下文。我想根据其中的特定数字字段(顺序)进行排序。请参考下面的代码 Log: resultArray: ( { Name = "Myname1"; Id = "dummyID"; Order = 0; parexId = 15; "__type" = "Question:#myAPI"; }, { Name = "Myname
Log: resultArray:
(
{
Name = "Myname1";
Id = "dummyID";
Order = 0;
parexId = 15;
"__type" = "Question:#myAPI";
},
{
Name = "Myname2";
Id = "fatID";
Order = 1;
parexId = 16;
"__type" = "Question:#myAPI";
}
{
Name = "Myname3";
Id = "colorID";
Order = 2;
parexId = 17;
"__type" = "Question:#myAPI";
}
)
代码:
但在排序过程中发生比较时,它会崩溃。
崩溃错误:
-[__NSCFNumber compare:options:]: unrecognized selector sent to instance 0x6b514b0
谁能帮帮我,我做错了什么
谢谢大家! 像下面这样使用它会很好
NSSortDescriptor *aSortDescriptor = [[NSSortDescriptor alloc] initWithKey:@"Order" ascending:YES];
[resultArray sortUsingDescriptors:[NSArray arrayWithObject:aSortDescriptor]];
[aSortDescriptor release];
订单是一个数字字段。它没有方法比较:选项。你应该使用
[obj1比较:obj2] 它给出编译错误,因为“Receiver type NSArray for instance message未声明具有选择器arrayWithObject的方法”resultArray应为NSMutableArray
NSSortDescriptor *aSortDescriptor = [[NSSortDescriptor alloc] initWithKey:@"Order" ascending:YES];
[resultArray sortUsingDescriptors:[NSArray arrayWithObject:aSortDescriptor]];
[aSortDescriptor release];