我有一个
然后,当我尝试这样做时:
然后,我在另一个班级里阅读了它:
NSMutableArray
包含了多个NSMutableArrays
: NSMutableArray *array = [[NSMutableArray alloc]init];
for (int i = 0; i < 5; i++)
{
NSMutableArray *miniArray = [[NSMutableArray alloc]init];
for (int k = 0; k < 30; k++)
{
[miniArray addObject:@"0"];
}
[array addObject:miniArray];
}
然后,当我尝试这样做时:
[[array objectAtIndex:packIndex]replaceObjectAtIndex:index withObject:@"1"];
出现错误: [__NSCFArray replaceObjectAtIndex:withObject:]: mutating method sent to immutable object'
为什么会出现这个错误?如何解决?谢谢!
更新:
我将该数组保存在NSUserDefaults
中:
[defaults setObject:array forKey:@"mainArray"];
然后,我在另一个班级里阅读了它:
array = [[NSMutableArray alloc]initWithArray:[[NSUserDefaults standardUserDefaults] objectForKey:@"mainArray"]];
还有一点需要提到的是,有时代码可以正常运行并将“0”更改为“1”。但有时会崩溃。所以我看不出它为什么能够正常工作或者为什么有时会崩溃。