当NSMutableArray
中的两个在索引0处具有相同值时,我想要删除该对象并用空字符串替换对象,从而得到不可预测的错误。但应用程序崩溃说
-[__NSArrayI replaceObjectAtIndex:withObject:]: unrecognized selector sent to instance 0xe2a06b0
2012-03-22 14:36:48.181 golf eScorer[3849:11f03] *** Terminating app due to uncaught exception
'NSInvalidArgumentException', reason: '-[__NSArrayI replaceObjectAtIndex:withObject:]:
unrecognized selector sent to instance 0xe2a06b0'
当我使用断点进行调试而不是日志显示时
2012-03-22 14:36:44.548 golf eScorer[3849:11f03] ArrayOfGameidOfPlayerToRemove....(
2
)
2012-03-22 14:36:44.549 golf eScorer[3849:11f03] discardedId...(
2
)
这是我的代码行:
if([[ArrayOfGameidOfPlayerToRemove objectAtIndex:0] isEqualToString:[discardedId
objectAtIndex:0]])
{
[ArrayOfGameidOfPlayerToRemove replaceObjectAtIndex:0 withObject:emptyString];
}
更新
我这样解决了
NSMutableArray *ArrayOfGameidOfPlayerToRemove = [yournsarray mutableCopy];
答案 0 :(得分:0)
'__ NSArrayI' - 你在这里有一个不可变的数组。
值得检查你的ArrayOfGameidOfPlayerToRemove arrray的实现 - 确保你已经初学NSMutableArray而不是NSArray
答案 1 :(得分:0)
变量ArrayOfGameidOfPlayerToRemove
似乎是NSArray
的实例。您只能在NSMutableArray